## SAMPLE 1
SELECT SUBSTRB(MAX(SYS_CONNECT_BY_PATH(CARTONID,', ')),2) CARTONID
FROM (
SELECT ROWNUM RW, NVL(B.CARTONID,C.CARTONID) CARTONID
FROM TTASKINHI A, TCONTENT B, TCONTENTHI C
WHERE A.OWNERID = '1474'
AND A.ORDERID = '131001-901642'
AND A.ITEMID = '1118825'
AND A.CONTENTID = B.CONTENTID(+)
AND A.CONTENTID = C.CONTENTID(+)
)
START WITH RW=1
CONNECT BY PRIOR RW=RW-1;
1. 내부 쿼리 실행시
RW CARTONID
1 32021092K
2 32021092K
3 32021092K
4 32021092K
2. 전체 쿼리 실행시
CARTONID
32021092K, 32021092K, 32021092K, 32021092K
## SAMPLE 2
SELECT A, MAX(SYS_CONNECT_BY_PATH(B,'/')) B
FROM (
SELECT ROW_NUMBER() OVER(PARTITION BY A ORDER BY A) AS RNUM
, A, B
FROM (
SELECT 1 A, '엄마' B FROM DUAL
UNION
SELECT 1 A, '아빠' B FROM DUAL
UNION
SELECT 1 A, '이모' B FROM DUAL
UNION
SELECT 2 A, '삼촌' B FROM DUAL
UNION
SELECT 2 A, '오빠' B FROM DUAL
)
)
START WITH RNUM = 1
CONNECT BY PRIOR RNUM = RNUM - 1 AND PRIOR A=A
GROUP BY A
1. 내부 쿼리 실행시
A B
1 아빠
1 엄마
1 이모
2 삼촌
2 오빠
2. 전체 쿼리 실행시
A B
1 /아빠/엄마/이모
2 /삼촌/오빠
3. RNUM = 1 -> RNUM = 2 변경시
A B
1 /엄마/이모
2 /오빠
---------------------------------------------------------------------------------------------
### 타블로그 참조 ###
'Database / Sql' 카테고리의 다른 글
[Oracle] 테이블 스페이스 용량/사용량 산출 (0) | 2014.03.04 |
---|---|
[Oracle] SID, SPID 를 통해 수행하고 있는 쿼리 찾기 (0) | 2013.11.27 |
[Oracle] 대소문자 처리 (0) | 2013.09.26 |
[Oracle] TOAD 스크립트 조회 및 백업 (0) | 2013.09.26 |
[Oracle] session 수 체크 및 session 죽이기 (0) | 2013.07.31 |
1. 컬럼명과 데이블명은 원도우,리눅스,유닉스에서 대소문자를 가리지 않습니다.
2. SQL문은 대소문자를 구분하지 않습니다.
SELECT NAME FROM LEE;
select NAME from LEE;
-- 2개다 같은 출력을 합니다.
※ SQL 쿼리는 대문자로 써주는것이 좋습니다.
3.문자열 데이타형은 기본으로 대소문자를 구분합니다.
SELECT * FROM TAB WHERE NAME = 'lee';
SELECT * FROM TAB WHERE NAME = 'LEE';
-- lee컬럼의 값이 lee라면 첫번째것은 되지만 두번째것은 되지 않는다.
4.대소문자 구분없이 검색하는법
WHERE UPPER("+search+") LIKE UPPER('%"+keyword+"%')
WHERE LOWER("+search+") LIKE LOWER('%"+keyword+"%')
※검색할 단어와 비교할 컬럼을 모두 대문자나 소문자로 만든후 비교합니다.
'Database / Sql' 카테고리의 다른 글
[Oracle] SID, SPID 를 통해 수행하고 있는 쿼리 찾기 (0) | 2013.11.27 |
---|---|
[Oracle] SYS_CONNECT_BY_PATH 문자열 합치기?? (0) | 2013.10.18 |
[Oracle] TOAD 스크립트 조회 및 백업 (0) | 2013.09.26 |
[Oracle] session 수 체크 및 session 죽이기 (0) | 2013.07.31 |
[Oracle] 11g 삭제 방법 (0) | 2013.07.15 |
1. 프로시저 보는 방법
-- 해당 DB 의 프로시저명 확인
select * from user_procedures;
-- 해당 DB 의 프로시저와 소스까지 확인
select * from user_source;
2. 프로시저, 테이블등을 스크립트로 백업 받는 방법
database->export->generate schema script
'Database / Sql' 카테고리의 다른 글
[Oracle] SYS_CONNECT_BY_PATH 문자열 합치기?? (0) | 2013.10.18 |
---|---|
[Oracle] 대소문자 처리 (0) | 2013.09.26 |
[Oracle] session 수 체크 및 session 죽이기 (0) | 2013.07.31 |
[Oracle] 11g 삭제 방법 (0) | 2013.07.15 |
[Oracle] Nested Loops, Sort Merge, Hash (0) | 2013.03.25 |