SQL 4 Oracle 오라클용 sql 실무

SQL4Oracle 64

중복 데이터 삭제하기 중복제거

2011-07-29 11:55:10 SQL 4 Oracle 오라클용 sql 실무 ▒ 중복제거 고객명,취득일자 중복일 경우 하나만 남기고 나머지 중복 데이터 삭제하기 delete 목적_Table a where a.rowid in ( select b.rowid from ( ----------------------------------------------------------------------------- select MAX (c.rowid) OVER(PARTITION BY c.고객ID, c.취득일자 ) AS Ture_row, c.고객명, c.취득일자, c.rowid from 목적_Table c where c.고객상태='활동중' and (c.고객ID, c.취득일자) in ( select d.고객ID, d..

SQL4Oracle 2023.03.03

일정 횟수(7회) 이상 존재하는 데이타 추출

2011-07-29 11:37:19 SQL 4 Oracle 오라클용 sql 실무 ▒ 일정 횟수(7회) 이상 존재하는 데이터 추출 select 고객ID, 고객명, count(*) 취득건수, sum(점수) 취득점수 from 목적_Table a, (select b.고객ID from 목적_Table b where b.고객상태='활동중' GROUP BY b.고객ID HAVING COUNT(*)>=7 ) b where a.고객상태='활동중' and a.고객ID= b.고객ID group by a.고객ID, 고객명

SQL4Oracle 2023.03.03

SQL loader 대량데이터 로딩포맷

2011-07-29 11:25:51 SQL 4 Oracle 오라클용 sql 실무 ▒ SQL loader이용 대량데이터 로딩포맷 1) 직접로딩 구분자'|' 파일끝 '@' LOAD DATA INFILE* append INTO TABLE 목적_Table명 FIELDS TERMINATED BY "|" OPTIONALLY ENCLOSED BY '@' (l,m,n,o) BEGINDATA 8103021123456|김씨|1|134858| 8103021123457|이씨|1|403831| 8103021123458|박씨|1|403831| @ 2) DATA.txt 파일 로딩 구분자'|' 파일끝 '@' LOAD DATA INFILE './DATA.txt' append INTO TABLE 목적_Table명 FIELDS TERMI..

SQL4Oracle 2023.03.03

아파트 거주 고객 추출

2011-07-29 10:46:06 SQL 4 Oracle 오라클용 sql 실무 ▒ 아파트 거주 고객 추출 SELECT a.고객ID, a.고객명, min(주소) 고객주소, count(*) 건수, sum(점수) 점수합계, min(최득일) 최초취득일 FROM 목적_Table a, ( select 고객ID, 주소 from 주소_Table b where ( 주소 like '%아파트%' or 주소 like '%@%' or 주소 like '%apt%' or 주소 like '%APT%' or 주소 like '%Apt%' or (주소 like '%A%' and 주소 not like '%A동%') or (주소 like '%a%' and 주소 not like '%a동%') or 주소 like '%힐스테이트%' or 주소 ..

SQL4Oracle 2023.03.03

가로집계 점수구간별 취득형태별

2011-07-29 09:30:04 SQL 4 Oracle --가로집계 점수구간별 취득형태별 --구간 점수 select '구간점수합계' 구분, 취득형태, sum(점수) 총합계, sum(case when 점수= 300000 and 점수= 500000 and 점수= 700000 and 점수= 1000000 and 점수= 3000000 and 점수= 5000000 and 점수= 7000000 and 점수= 10000000 and 점수= 20000000 and 점수= 30000000 and 점수= 40000000 and 점수= 50000000 then 점수 else 0 end ) 점수5000만이상 from 목적_Table where 고객상태='활동중' group by 취득형태 union all --구간 건수 s..

SQL4Oracle 2023.03.03

취득한지 12시간이 지난 건 추출

2011-07-29 09:09:44 SQL 4 Oracle 오라클용 sql 실무 ▒ 취득한지 12시간이 지난 건 추출 select 고객명,취득점수, to_char(취득일자,'YYYYMMDD-HH24MISS') 취득일자 from MMS_log WHERE trunc( mod( (sysdate - 취득일자)*24, 24 ) ) >= 12 ▒ 00시에서 08이전에 등록된 건 추출 select 고객명,취득점수, to_char(취득일자,'YYYYMMDD-HH24MISS') 취득일자 from MMS_log WHERE to_char(취득일자,'HH24')>='00' and to_char(취득일자,'HH24')

SQL4Oracle 2023.03.03

실행계획에서 인텍스 cost 강제 조정

2011-07-29 08:55:36 SQL 4 Oracle 오라클용 sql 실무 ▒ 실행계획에서 인텍스 cost 강제 조정 alter session set "optimizer_index_cost_adj"=10 optimizer cost 강제로 낮춘다.. 정의된 인덱스가 optimizer에게 선택받지 못 할때 잠시 사용. (1-1000 default:100)디폴트 설정값 100은 인덱스에 대한 액세스 비용이 보통의 비용모델에 근거해서 평가될 것이고, 10으로 설정한다면 보통의 인덱스 액세스 비용의 1/10로 평가될 것임을 의미합니다. 실행계획에서 인텍스 강제유도...

SQL4Oracle 2023.03.03

사업자번호 구분

2011-07-29 08:47:33 SQL 4 Oracle 오라클용 sql 실무 ▒ 사업자번호 구분 개인,법인 구분코드(4,5번째자리) 123-81-12345 #개인사업자 구분 코드 1. 개인과세사업자 : 01 - 79 2. 개인면세사업자 : 90 - 99 3. 법인이 아닌 종교단체 : 89 4. 3.이외의자및 다단계판매업자 : 80 #법인 구분 코드 1. 영리법인의 본점 : 81,86,87 2. 영리법인의 지점 : 85 3. 비영리법인의 본.지점 (사단,재단,등..) : 82 4. 국가,지방자치단체, 지방자치단체조합 : 83 5. 외국법인의 본.지점및 연락사무소 : 84

SQL4Oracle 2023.03.03

가로집계

2011-07-28 19:32:22 SQL 4 Oracle 오라클용 sql 실무 ▒ 가로집계 동일인 취득형태별 취득일자 구간별 점수 가로 집계 select 고객ID,고객명,취득형태, ,sum(decode(취득구간,'m03',to_number(점수),0)) n03 ,sum(decode(취득구간,'m06',to_number(점수),0)) n06 ,sum(decode(취득구간,'m12',to_number(점수),0)) n12 ,sum(decode(취득구간,'m18',to_number(점수),0)) n18 ,sum(decode(취득구간,'m24',to_number(점수),0)) n24 ,sum(decode(취득구간,'m36',to_number(점수),0)) n36 ,sum(decode(취득구간,'m48',to_..

SQL4Oracle 2023.03.03