설문조사
PostgreSQL/PPAS 관련 듣고 싶은 교육은


총 게시물 94건, 최근 0 건
   

결과물 종으로 출력하기

글쓴이 : PostgresDBA 날짜 : 2013-06-22 (토) 16:27 조회 : 6777
일단 MySQL 데이터베이스의 종(횡의 반대말) 출력방법을 알아보겠습니다.

MYSQL[test]> select * from test;
+------+------+------+
| x    | y    | z    |
+------+------+------+
|    0 | abc  | def  |
|    0 | abc  | def  |
|    0 | abc  | def  |
+------+------+------+
3 rows in set (0.00 sec)

MYSQL [test]> select * from test \G
*************************** 1. row ***************************
x: 0
y: abc
z: def
*************************** 2. row ***************************
x: 0
y: abc
z: def
*************************** 3. row ***************************
x: 0
y: abc
z: def
3 rows in set (0.00 sec)

MYSQL[test]>

컬럼의 갯수가 많을때 이처럼 종방향으로 출력하면 보기 편하겠죠?
PostgreSQL 에도 이런 기능이 있을까요? 물론 있습니다. 다음과 같습니다.

scott@[local]:5432:scottdb] 
SQL> select * from emp;
 empno | ename  |    job    | mgr  |  hiredate  | sal  | comm | deptno 
-------+--------+-----------+------+------------+------+------+--------
  7499 | ALLEN  | SALESMAN  | 7698 | 1981-02-20 | 1600 |  300 |     30
  7521 | WARD   | SALESMAN  | 7698 | 1981-02-22 | 1250 |  500 |     30
  7566 | JONES  | MANAGER   | 7839 | 1981-04-02 | 2975 | NULL |     20
  7654 | MARTIN | SALESMAN  | 7698 | 1981-09-28 | 1250 | 1400 |     30
  7698 | BLAKE  | MANAGER   | 7839 | 1981-05-01 | 2850 | NULL |     30
  7782 | CLARK  | MANAGER   | 7839 | 1981-06-09 | 2450 | NULL |     10
  7788 | SCOTT  | ANALYST   | 7566 | 1982-12-09 | 3000 | NULL |     20
  7839 | KING   | PRESIDENT | NULL | 1981-11-17 | 5000 | NULL |     10
  7844 | TURNER | SALESMAN  | 7698 | 1981-09-08 | 1500 |    0 |     30
  7876 | ADAMS  | CLERK     | 7788 | 1983-01-12 | 1100 | NULL |     20
  7902 | FORD   | ANALYST   | 7566 | 1981-12-03 | 3000 | NULL |     20
  7934 | MILLER | CLERK     | 7782 | 1982-01-23 | 1300 | NULL |     10
  7369 | SMITH  | CLERK     | 7902 | 1980-12-17 |  900 | NULL |     20
  7900 | JAMES  | CLERK     | 7698 | 1981-12-03 | 1050 | NULL |     30
(14 rows)

scott@[local]:5432:scottdb] 
SQL> \x
Expanded display is on.
scott@[local]:5432:scottdb] 
SQL> select * from emp;
-[ RECORD 1 ]--------
empno    | 7499
ename    | ALLEN
job      | SALESMAN
mgr      | 7698
hiredate | 1981-02-20
sal      | 1600
comm     | 300
deptno   | 30
. . . . . . . . . . . . . . . . .
-[ RECORD 14 ]-------
empno    | 7900
ename    | JAMES
job      | CLERK
mgr      | 7698
hiredate | 1981-12-03
sal      | 1050
comm     | NULL
deptno   | 30

scott@[local]:5432:scottdb] 
SQL> 

참고로 오라클에서는 디폴트로 이런 기능을 제공하지 않습니다.
하지만, 이런식으로 구현할수 있답니다.

   

postgresdba.com