쿼리
-
[오라클/SQL] 날짜함수(SYSDATE, ADD_MONTHS, LAST_DAY, MONTHS_BETWEEN) , 변환함수(TO_CHAR, NVL), DB속도 튜닝개발자 레퍼런스 2009. 11. 6. 21:10
날짜함수 * SYSDATE SYSDATE --현재 시스템의 날짜 데이터를 반환 SQL> SELECT TO_CHAR(sysdate, 'yyyymmddhh24mmss') FROM dual 결과 : 20091106201101 * ADD_MONTHS ADD_MONTHS(date, integer) 지정한 날짜에서 해당월에 일정한 정수(혹은 마이너스 정수)값을 더한 날짜를 반환 SQL> SELECT TO_CHAR(ADD_MONTHS(sysdate,-2), 'YYYY-MM-DD') FROM dual 결과 : 2009-09-06 * LAST_DAY LAST_DAY(date) 해당월의 마지막 날짜를 반환한다. SQL> SELECT LAST_DAY(sysdate) FROM dual 결과: 2009/11/30 20:57:4..
-
[Oracle/SQL] NOT EXISTS, IS NULL, CASE WHEN 다중 입력조건 검색 쿼리문개발자 레퍼런스 2009. 9. 7. 23:53
오라클(Oracle)의 SQL 쿼리 정리 입니다. 개별적인 값일 경우 A B 를 하면 C에서 A != B 와 같은 뜻으로 동작합니다. 다만 개별값이 아닌 SELECT를 이용한 조회된 그룹 혹은 조회값들이라면 아래와 같이 NOT EXISTS 쿼리문을 WHERE 절에 사용해 줌으로써 여집합의 결과를 얻을 수 있습니다. AND NOT EXISTS ( SELECT DISTINCT(b.tup_c) AS tup_c FROM tb_cs_jh_ch_tupcodesvc b WHERE substr(b.cd_svc_c,1,2) = '60' AND A.tup_c = b.tup_c ) 위와 같은 역할을 하는 IS NULL을 사용한 다른 사용법입니다. AND ( SELECT DISTINCT(b.tup_c) AS tup_c FRO..
-
[Oracle/SQL] 오라클 채번시 DECODE, NVL 조건을 사용한 SELECT 단건조회 쿼리문개발자 레퍼런스 2009. 6. 27. 21:17
오라클 채번시 DECODE, NVL 조건을 사용한 SELECT 단건조회 쿼리 오라클이나 MySQL을 사용하여 금융 IT 업무를 개발하다보면 특정 조건에 맞는 일련번호로 채번을 해야하는 경우가 있습니다. 채번에는 여러가지 방식이 사용될 수 있는데.. 쿼리문 내에서 처리하지 않고 C 프로그래밍 상에서 처리할 수 있으나 경험상 쿼리문 내에서 조건에 맞게 채번을 해서 결과를 내 주는것이 편할때가 많습니다. NVL 과 DECODE 를 사용해 채번하는 쿼리문을 알아보도록 하겠습니다. NVL(expr1, expr2) expr1 : 널을 포함하는 표현식의 소스 값, 반환되는 값은 항상 expr1의 데이터 유형과 동일 expr2 : 널을 변환할 대상 값 이라고 표현할 수 있으나 이러면 무슨말인지 잘 모르는 분이 많습니다..
-
[오라클(ORACLE)/SQL] 디코더 (DECODE) , 케이스 (CASE WHEN) 쿼리문 활용하기개발자 레퍼런스 2009. 5. 14. 07:19
[오라클(ORACLE)/SQL] 디코더 (DECODE) , 케이스 (CASE WHEN) 쿼리문 활용하기 개발자를 위한 데이타베이스(DB) 프로그래밍에 필요한 레퍼런스들을 정리해 두고 있습니다. 이전의 포스팅 자료들에 이어 이번에는 오라클이나 MySQL과 같은 SQL 데이타베이스(DB) 프로그램에서 디코더 (DECODE) 와 케이스 (CASE WHEN) 문에 대해 알아 보겠습니다. 또한, 디코더 (DECODE) 로 작성된 쿼리를 케이스 (CASE WHEN) 문을 사용한 쿼리로 대체하는 법을 소개합니다. [오라클(ORACLE)/SQL] WHERE IN, CASE WHEN THEN END, GROUP BY, DISTINCT, MAX [오라클(ORACLE)/SQL] 유니온(UNION) 서브(Sub)쿼리 중복제거..
-
[오라클(ORACLE)/SQL] WHERE IN, CASE WHEN THEN END, GROUP BY, DISTINCT, MAX 쿼리문개발자 레퍼런스 2009. 4. 23. 00:10
업무중 오라클(Oracle) 혹은 MySQL의 SQL 쿼리를 정리하며 공부하는 과정에서 얻은 유용한 쿼리문을 함께 공유하기 위해 남깁니다. - WHERE A IN ( B, C ,D, E ) WHERE절의 다건 조건이라고 생각하시면 됩니다. A가 B 이거나 C 이거나 D 이거나 E 중 하나라도 같은것이 있다면 출력됩니다. WHERE (A = B) OR (A = C) OR (A = D) OR ( A = E ) 와 같은 의미 입니다. - CASE WHEN (조건1) THEN (결과1) END CASE WHEN (조건2) THEN (결과2) END CASE WHEN (조건3) THEN (결과3) END ............. CASE WHEN 문은 각각의 케이스 마다 조건이 일치한다면 결과로 분기 할 수 있습..
-
[오라클(ORACLE)/SQL] 유니온(UNION), 서브쿼리(Sub-Query), 중복제거, 최신건 페이징 처리 쿼리문개발자 레퍼런스 2009. 4. 17. 21:32
오라클(Oracle) 및 MySql 등에서 SQL문을 사용하여 유니온(UNION) 서브쿼리 중복제거 최신건 페이징 처리(다건조회)시 참고하여 활용할 수 있는 쿼리문 입니다. 실무에서 현재 사용하는 쿼리이며 공부하는 차원에서 정리하던 것을 올려봅니다. - 유니온(UNION) SELECT * FROM A UNION (ALL) SELECT * FROM B A 와 B 의 테이블의 해당하는 컬럼들을 연결하여 보여줍니다. OR과 유사하다고 생각하면 되며 실제로 OR을 사용하는 쿼리를 UNION ALL으로 대체시 수행속도를 향상할 수 있습니다. UNION은 중복된 데이타를 제거하며 UNION ALL은 중복된 데이타를 모두 보여 줍니다. 가능하다면 UNION ALL을 사용하는 것이 좋습니다. (DISTINCT를 사용하..
-
-
[오라클(ORACLE)/SQL] Oracle(오라클) 다건 조회시 페이징 처리 쿼리문개발자 레퍼런스 2009. 3. 4. 19:48
개발 도중에 잘 몰랐던 쿼리문을 개발팁 형식으로 정리해 보았습니다. SELECT ARRAY (셀렉트 배열)을 사용하여 다건 조회를 하며 ROWNUM(로우넘)의 사용법을 케이스별로 실제 사용하여 적용해 보았던 오라클 쿼리문들 입니다. (그러므로 문법상 오류는 없습니다.) 이해하고 보면 쉽지만 잘 몰랐을대는 정말 헷갈리는 쿼리문 이구요. Oracle(오라클) 및 SQL을 사용하여 개발 하시는데 도움이 되는 유용한 팁이라 생각되어 공유합니다. 먼저 기본이 되는 다건조회 쿼리문 입니다. 1. 다음 조회 KEY one SELECT * FROM ( SELECT tup_comp_no tup_comp_no ,tup_conm tup_conm ,bzno bzno ,copno copno FROM tb_cs_jh_cm_tup..