'Programming/postgreSQL'에 해당되는 글 5건

  1. 2013.01.17 | Oracle JOIN
  2. 2012.12.24 | pgsql 문자열 연산자
  3. 2012.12.21 | \copy명령
  4. 2012.12.20 | postgreSQL 자료혐
  5. 2012.12.20 | DML 정리(계속 update)

Oracle JOIN

Programming/postgreSQL | 2013. 1. 17. 10:02
Posted by 오요미

--1. 3개 테이블 조인

SELECT *

FROM

    EMPLOYEES EMP

INNER JOIN DEPARTMENTS DEP

ON

    EMP.DEPARTMENT_ID=DEP.DEPARTMENT_ID

INNER JOIN JOBS JOBS

ON

    EMP.JOB_ID=JOBS.JOB_ID;

 

--2. 부서명, 회사이름, 직원코드, LAST FIRST NAME붙여서 NAME이라는 컬럼으로 나오게 WHERE 에다가 MINI_SAL이 4000이상 MAX_SAL 1억 6000

SELECT

    DEP.DEPARTMENT_NAME,

    JOBS.JOB_TITLE,

    EMP.EMPLOYEE_ID,

    CONCAT(CONCAT(EMP.FIRST_NAME,' ') ,EMP.LAST_NAME) AS NAME

FROM

    DEPARTMENTS DEP

INNER JOIN EMPLOYEES EMP

ON

    DEP.DEPARTMENT_ID= EMP.DEPARTMENT_ID

INNER JOIN JOBS JOBS

ON

    EMP.JOB_ID=JOBS.JOB_ID

WHERE

    JOBS.MIN_SALARY >= 4000

AND JOBS.MAX_SALARY<=16000;

 

--3. EMP SALARY 2000에서 3000사이 사원 3000에서 4000사이 대리 4000에서 5000사이 과장 5000이상 차장 컬럼 이름은 A LAST FIRST NAME붙여서 NAME

SELECT

    CONCAT(CONCAT(FIRST_NAME,' '),LAST_NAME) AS NAME,

    CASE

        WHEN SALARY BETWEEN 2000 AND 3000

        THEN '사원'

        WHEN SALARY BETWEEN 3000 AND 4000

        THEN '대리'

        WHEN SALARY BETWEEN 4000 AND 5000

        THEN '과장'

        WHEN SALARY>5000

        THEN '차장'

    END AS A

FROM

    EMPLOYEES;

 

--4.매니저 이름을 출력하게 직원의 아이디, 이름, 매니저 아이디

SELECT

    EMPLOYEE_ID,

    EMPLOYEE_NAME,

    CASE

        WHEN MANAGER_NAME =' '

        THEN '-'

        ELSE MANAGER_NAME

    END AS MANAGER_NAME

 

FROM //만들어진 테이블에서 다시 컬럼 선택

    (

        SELECT

            A.EMPLOYEE_ID,

            CONCAT(CONCAT(A.FIRST_NAME, ' '),A.LAST_NAME) AS EMPLOYEE_NAME,

            CONCAT(CONCAT(B.FIRST_NAME, ' '),B.LAST_NAME) AS MANAGER_NAME

        FROM

            EMPLOYEES A

        LEFT OUTER JOIN EMPLOYEES B

        ON

            A.MANAGER_ID=B.EMPLOYEE_ID

) XX //임시 테이블 명

ORDER BY EMPLOYEE_ID ASC

'Programming > postgreSQL' 카테고리의 다른 글

pgsql 문자열 연산자  (0) 2012.12.24
\copy명령  (0) 2012.12.21
postgreSQL 자료혐  (0) 2012.12.20
DML 정리(계속 update)  (0) 2012.12.20
 

pgsql 문자열 연산자

Programming/postgreSQL | 2012. 12. 24. 15:23
Posted by 오요미

1. || : 문자열연결

'abc' || 'def'는 'abcdef'이다.

 

2. ~~ : like

'xyzzy' ~~ '%zz%'

 

3. !~~ : not like

'xyzzy' !~~ '%aa%'

 

4. ~ : 정규표현식 하위 문자열 일치. 시작과 끝의 문자를 지정하기 위하여  ^와 $를 사용한다.

'xyzzy' ~ 'y.*y'

 

5. ~* : 정규표현식 일치, 대, 소문자 구별 안함

'xyzzy' ~ *'^x.*Y$'

 

6. !~ : 와 일치하지 않은 (~의 반대)

'xyzzy' !~' aa'

 

7. !~* : 와 일치하지 않은, 대,소문자 구별 안함(~*의 반대)

'xyzzy' !~* ' AA'

'Programming > postgreSQL' 카테고리의 다른 글

Oracle JOIN  (0) 2013.01.17
\copy명령  (0) 2012.12.21
postgreSQL 자료혐  (0) 2012.12.20
DML 정리(계속 update)  (0) 2012.12.20
 

\copy명령

Programming/postgreSQL | 2012. 12. 21. 14:12
Posted by 오요미

\copy 테이블 이름 from '파일이름' [using delimiters '구분자로 사용한 단일 문자'] [with null as 'null을 의미하는 문자열']

IS NULL : NULL인지 여부를 검사하는 질의어

 

COUNT(*) : 해당열의 총갯수를 구한다.

COUNT(열이름) : null을 제외한 갯수를 구한다.

MIN은 NULL값을 무시한다.

'Programming > postgreSQL' 카테고리의 다른 글

Oracle JOIN  (0) 2013.01.17
pgsql 문자열 연산자  (0) 2012.12.24
postgreSQL 자료혐  (0) 2012.12.20
DML 정리(계속 update)  (0) 2012.12.20
 

postgreSQL 자료혐

Programming/postgreSQL | 2012. 12. 20. 18:06
Posted by 오요미

1. INTEGER

2. SERIAL 

정수이지만 각 행이 추가될 때 자동으로 부여되는 유일한 값, Postgre SQL은 유일한 식별번호를 생성하기 위하여 해당 열에 대한 특별한 카운터인 일련번호, 즉 시퀸스(sequence)를 생성한다.

시퀸스의 이름은 항상 <테이블 이름>_<열이름>_seq로 지정된다. 

=> nextval('시퀸스명');으로 다음값을 볼수 있다.

=>currval('시퀸스명');으로 현재값을 볼 수 있다.

=>setval('시퀸스명','새로운 시퀸스 명');  MAX('열이름')으로 값을 구해 시퀸스의 값을 수정한다.

ex)SELECT setval('customer_customer_id_seq', 19);

3. CHAR

4. VARCHAR

5. DATE

6. NUMERIC

'Programming > postgreSQL' 카테고리의 다른 글

Oracle JOIN  (0) 2013.01.17
pgsql 문자열 연산자  (0) 2012.12.24
\copy명령  (0) 2012.12.21
DML 정리(계속 update)  (0) 2012.12.20
 

DML 정리(계속 update)

Programming/postgreSQL | 2012. 12. 20. 18:03
Posted by 오요미

INSERT INTO 테이블 이름 (열들의 이름) VALUES (각 열이름에 대한 열의 값);

'문자열'로 표현하며 특수문자의 경우 \를 붙여서 사용 ex) \\ =>\(출력값)

'Programming > postgreSQL' 카테고리의 다른 글

Oracle JOIN  (0) 2013.01.17
pgsql 문자열 연산자  (0) 2012.12.24
\copy명령  (0) 2012.12.21
postgreSQL 자료혐  (0) 2012.12.20
 
블로그 이미지

오요미

공부할 수 있는 순간을 감사하며 공부하라.

카테고리

분류 전체보기 (121)
Electronics (1)
Programming (72)
Ajax (0)
Jquery (6)
PHP (3)
Javascript (36)
DOM (0)
HTML (2)
CSS (1)
Linux (5)
postgreSQL (5)
Regex (0)
기타 (7)
보안 (1)
Python (0)
Matlab (1)
OrCad (1)
LTSpice (4)
Machine learning (0)
Deep learning (0)
Culturallife (30)
English (11)
취업 (1)
대학원 (4)
Life (1)