본문 바로가기

Server Oriented/DB-Oracle

(38)
윤년 추출 여기선, last_day() 와 add_months() 를 이용한 방법을 확인해 본다. last_day() 는 해당 월의 마지막 일자를 세팅해 주므로, 2월에 적용하면 됨.select ymd from (select to_char(last_day(to_date((to_char(sysdate,'yyyy')-rownum+1)||'02', -- -rownum 이면 이전년도, +rownum 이면 이후년도 'yyyymm')),'yyyymmdd') ymd from w2_article where rownum < 1000 ) where substr(ymd,5,4)='0229' -- 윤년; 1/31 일자에 add_months 로 1개월을 추가하면 2월 말일을 세팅해주는 것을 활용.select ymd from (select..
SQL 쿼리 튜닝 1. like사용해도 퍼포먼스에 영향을 주지 않을 때만 사용하자.like 보다는 between ~ and ~ 또는 비교 연산자를 사용해서 튜닝
cascade constraint purge http://elephant11.tistory.com/51 이런 스타일의 DB 작업시에는,마지막 버튼을 클릭하기 전에 다시 한 번 작업을 제대로 실행하는 것인지 점검할 필요가 있다.
exists 조건을 넣을 때 unique index 를 태우지 않는다면.. 아래와 같이 exists 조건을 넣을 때 unique index 가 없거나 태우지 않는다면..rownum = 1 조건을 추가하자..플랜을 떠 보면, 좀더 범위가 줄거나 체크할 내용이 가벼워진 것을 확인할 수 있을 것이다..rownum = 1 이라는 조건이 들어가면 pk 를 태우는 것과 동등하게 작동한다고 볼 수 있다.그렇더라도 인덱스가 타는 구조로 가는 것이 좋다.단, 이것이 만능이 아닐 수 있다.초기값 얼만큼의 갯수를 가져오느냐, 모든 결과를 추출하느냐와도 상관관계가 있을 수 있다.요는, 플랜을 뜨긴 하되 실제로 필요한 결과를 제대로 짧은 시간에 가져오느냐는 발품을 팔아야 한다는 것. ㅠ.DB Tool 로는 A 라는 sql 문장이 퍼포먼스가 좋게 나오더라도,실행될 때는 B 가 더 빠를 수도 있다.그리고..
DB 작업시 날아간 데이타 복원 1. Drop 된 테이블이면 DB 관리자 화면에서 RecycleBin 을 이용하여 복원 2. delete 된 레코드면, FlashBack 을 통해 insert 하여 복원 데이타 확인후 복원 요망. 오래된 것은 복원 불가 insert into 테이블명 select * From 테이블명 AS OF TIMESTAMP(SYSTIMESTAMP-INTERVAL '15' MINUTE); (상황에 따라 다르겠지만, 5일 정도 이내이면 찾을 수 있는듯..) select * from 테이블명 AS OF TIMESTAMP(SYSTIMESTAMP-INTERVAL '15' MINUTE) where 조건... ; minute 대신에 second, hour, day 등도 가능. 3. 플래시백https://jang2r.tistory..
하둡 Hadoop http://navercast.naver.com/contents.nhn?rid=122&contents_id=44732- NoSql- 오픈 소스- 빅데이타
몽고디비, mongo DB http://krksap.tistory.com/854- 오픈 소스- NoSql- Key-Value 방식, Json (Bson) 데이타 - 몽고 DB 단점 http://www.bloter.net/archives/103400, 하둡 -> 몽고DB -> 카산드라/HBase/Hive, 데이타 안정성 떨어짐(데이타 날아가기도..) - 몽고 DB 장점 http://www.zdnet.co.kr/news/news_view.asp?artice_id=20130704160801&type=xml, 하둡 보다 몽고 DB 추천
오라클 주차, 오늘이 포함된 주차의 첫 날과 끝 날 http://blog.naver.com/ejjungeo/50185166630to_char(sysdate,'iw'), 1년에서의 주차(최대 53주차),to_char(sysdate,'ww'), 1년에서의 주차(최대 53주차)to_char(sysdate,'w') 이달에서의 주차(최대 5주차) 오늘이 포함된 주차의 첫 날과 끝 날to_char() 함수에서 옵션이 'd' 가 붙으면, 일요일이 1, 월요일이 2, ...아래 내용은 주차의 첫 날이 월요일이라고 할 때 그렇구요..select to_char(sysdate-decode(to_char(sysdate,'d'), 1,6, 2,0, 3,1, 4,2, 5,3, 6,4, 7,5),'yyyymmdd') f, to_char(sysdate+decode(to_char(sy..