script
-
SQL을 활용해서 스네이크 케이스를 카멜 케이스로 바꾸기개발/Database 2018. 7. 26. 16:51
INITCAP() 이라는 함수를 써서 쉽게 바꿔줄 수 있다.물론 딸랑 INITCAP() 하나만 써서는 안되고 다른 함수들을 같이 섞어서 써주면 가능 결론만 먼저 말하자면 아래처럼 쓰면 된당SUBSTR ( REPLACE ( INITCAP ( '1' || 대상문자열 ), '_' ), 2) 이제 안에서부터 하나씩 쪼개보겠음 1. INITCAP() - 대상 문자열에서 각 단어의 첫 글자만 대문자로, 나머지는 소문자로 변환 - '1' || 'ABC_DEF_GHI' 로 문자열 앞에 '1' 은 왜 붙였나? ∵ INITCAP 을 쓰면 무조건 단어의 첫글자를 대문자로 변환해주는데, 카멜 케이스는 맨 앞 단어의 첫 글자는 소문자가 되야 하기 때문에 앞에 다른 문자를 아무거나 붙여서 맨 앞 단어의 첫 글자가 대문자가 되는 ..
-
나도 WITH절을 써보자개발/Database 2018. 7. 26. 13:50
출처는 내 영혼의 구원자 구루비 http://wiki.gurubee.net/pages/viewpage.action?pageId=27427118 http://www.gurubee.net/lecture/1505 http://wiki.gurubee.net/pages/viewpage.action?pageId=27427116 1. WITH절 사용 시 장점 = 데이터 중복 액세스 제거- SQL에서 동일한 데이터를 반복 처리할 경우, 성능개선방법으로 WITH절을 많이 활용- 데이터 건수는 적으나 데이터 추출 시 I/O 처리량이 많은 경우에 효과적- 여러 부분에 사용될 데이터를 1회 추출하여 Global Temporary Table 에 저장하고, 요청 시 저장된 데이터만 읽어 처리하면 되므로 SQL 성능 개선 및 I/..
-
DELETE VS TRUNCATE VS DROP개발/Database 2018. 7. 26. 11:20
요즘 쿼리 짜기에 재미를 붙여서 신나게 쿼리를 뚱땅뚱땅 만들고 있는데INSERT 쿼리문이 시작하기 전에 TRUNCATE 문을 붙여주라는 명을 받았다. 그러고보니 CREATE TABLE...시작 전에는 DROP TABLE.... 을 붙여주고INSERT INTO... 시작 전에 TRUNCATE...를 붙여주는걸 스크립트에서 종종 발견했다.무슨 차이인지 검색해보니 이미 너무 알아보기 쉽게 잘 정리된 것이 있어서 퍼옴 출처 : https://wikidocs.net/4021 * DELETE, TRUNCATE, DROP 명령어의 차이점 이 그림을 보면 정말 명확하게 차이점이 드러난다. 1. DELETE - 데이터만 지워지고 테이블 용량과 인덱스 등은 삭제되지 않음 - WHERE 조건을 걸어 특정 데이터만 삭제 가능..
-
[ERwin] ERwin에서 작성한 ERD를 스크립트로 변환하기개발/Tool 2018. 7. 24. 15:08
지난번엔 ERwin을 써서 기존의 테이블들을 ERD로 변환했다면이번에도 역시 ERwin을 써서 ERD를 다시 스크립트로 변환해서 테이블을 생성하는 작업을 해본당작업을 실행하는 메뉴명도 두 작업이 짝꿍을 이룬다. 전자는 Reverse Engineer, 후자는 Forward Engineer임준비물은 간단하다. 작성이 끝난 ERD와 ERwin 만 있으면 끝 * Forward Engineer 기능을 활용하여 ERD를 스크립트로 변환하는 법 우선 Physical ERD 가 필요하다. 완성된 ERD를 Physical 모드로 돌려놓은 후 Tools > Forward Engineer > Schema Generation... 메뉴 선택 그러면 아래와 같은 창이 뜨는데 빨간색으로 표시한 Filter...버튼을 누르면 이렇..