본문 바로가기
I am a developer

SQL 쿼리문

by Echinacea 2021. 6. 10.
반응형

NULLIF(expr1, expr2)

expr1=expr2 이면 null, 같지 않으면 expr1 반환

 

DECODE((COMM,NULL,-99,COMM))

=> COMM이 NULL이면 -99, COMM이면 COMM

 

NVL(컬럼, 0) -> 컬럼 NULL이면 0

NVL2(컬럼, '남', '여') -> 컬럼 NULL이면 '여' 아니면 '남'

 

DECODE(E1, E2, 1)

-> E1이 E2면 1 반환, E2가 아니면 NULL 반환

 

DENSE_RANK() OVER (PARTITION BY ~)

UPDATE DEPT SET DNAME = '중부연구소' WHERE DEPTNO = 50;

 

MERGE INTO A

USING B

ON (A.A1 = B.B1)

WHEN MATCHED THEN

UPDATE SET A.A2 = B.B2

WHEN NOT MATCHED THEN

INSERT(A.A2)

VALUES(B.B2)

 

 

UPDATE EMP SET SAL = SAL*1.3

 

 

INSERT INTO A VALUES (1,2);

 

SELEECT TO_CHAR(SAL, '$999.999')

 

 

VSIZE(ID)

 

 

CREATE TABLE EMP_CTAS AS SELECT * FROM EMP;

 

 

CREATE TABLE AS (SELECT~ FROM~)

 

 

SELECT SUM(DECODE(DEPTNO,10,1,0)) AS "10번부서",

          SUM(DECODE(DEPTNO,20,1,0)) AS "20번부서", ...

 

 

ALTER TABLE emp MODIFY editid VARCHAR2(4)

 

ALTER TABLE ad RENAME COLUMN 고객 to 손님

ALTER TABLE ad RENAME TO advertise

 

CREATE TABLE CUS2(SEX CHAR(1) CONSTRAINT CUST2_SEX_CK CHECK (SEX IN('M,'F)))

 

CREATE INDEX EX_INDEX ON CUST(NAME, ADDRESS);

 

SELECT SUBSTR(ENAME,1,3) FROM EMP

 

SELECT INSTR(ENAME, 'A'), SUBSTR(ENAME, -3, 2)
          INSTR(ENAME, 'A',2) <- A의 위치가 2 이상일때만 출력

 

SELECT ltrim(' 대한민국 ') rtrim(' 대한민국 '), trim(' 대한민국 ') FROM DUAL

 

SELECT mod(100,3) FROM DUAL

 

SELECT add_monthes(sysdate, 3), last_day(sysdate)

 

SELECT next_day(sysdate, '일요일') <= 다가오는 일요일 = next_day(sysdate, 1)

 

SELECT round(sysdate), round(sysdate, 'YEAR')

 

WHERE EXTRACT(YEAR FROM HIREDATE) = 1982

 

 

TO_CHAR(123456, '999999')

TO_CHAR(123456, 'fm999999')

*9:없으면 생략/0:없으면 0

 

 

스칼라 서브쿼리란?

  • 스칼라 서브쿼리란 Select-List에서 서브쿼리가 사용될 때 이를 스칼라 서브쿼리라 칭함.

https://aquerytool.com/

반응형

'I am a developer' 카테고리의 다른 글

[JAVA] 백준 1110 - 다시풀기  (0) 2021.06.18
[JAVA] 백준 10951  (0) 2021.06.18
[JAVA] 백준 10871  (0) 2021.06.15
[JAVA] 백준 2439 별찍기 - 2  (0) 2021.06.14
xcode 첫(사실 오랜만에) 사용기  (0) 2021.06.14

댓글