본문 바로가기

데이터베이스

(64)
(스크랩) ★★★ PostgreSQL 에서 '이스케이프 시퀀스' 조회 방법 text_date like '%\n%' 위 처럼 필터를 걸면 안 나오고 text_date like E'%\n%' 위 처럼 걸면 필터가 잘 먹힌다. https://stackoverflow.com/questions/12101168/how-can-i-search-for-r-n-in-an-sql-select-like-statement How can i search for \r\n in an SQL SELECT LIKE statement? I'm working on a site for a client who did not properly sanitize some of their form data. In particular, they did not do anything to account for line-break..
(스크랩) Redis 구조 (feat. 시리즈물임!) https://cla9.tistory.com/101 1. Redis 구조 서론 지금부터 다룰 Redis 시리즈는 개인 공부 내용 정리 목적으로 작성하였습니다. 주요 포스팅 내용은 redis-cli 명령어 학습과 Spring Data Redis를 활용해서 해당 명령어 적용방법에 대해서 살펴보겠 cla9.tistory.com
[ORACLE] 인덱스 생성 전후, 쿼리 튜닝 전후 속도 인덱스 제거하고 쿼리 실행 : 3.622 인덱스 생성 후 쿼리 실행 : 0.853 (1/4 줆) 쿼리 튜닝 후 : 0.011 (1/80 줆) WITH WHOLE AS ( -- 1. 컬럼을 가공하여 조건주지 말고 -> 조건을 가공 SELECT INDUSTRY_CODE CD, CARD_TRANSACTION_AMOUNT AMT FROM CARD_TRANSACTION WHERE CARD_NUM IN (SELECT CARD_NUM FROM CARD_CONTRACT WHERE RESI_NUM = '9203101937988') AND CARD_TRANSACTION_TIME >= TO_DATE('2020'||'01', 'YYYYMM') AND CARD_TRANSACTION_TIME < ADD_MONTHS(TO_DATE..
[Oracle] 천만 건 업데이트 속도 : 7시간
[Oracle] SQL 작업 내역 (20.09.23-1) SELECT * FROM TABS; SELECT * FROM CARD_PRODUCT_LIST; SELECT * FROM CARD_CONTRACT; SELECT * FROM COMMON_CODE; SELECT * FROM MEMBER WHERE ID = 'HELLO'; SELECT * FROM OPEN_CARD_TRANSACTION; DELETE FROM OPEN_CARD_TRANSACTION; --COMMIT; --INSERT INTO OPEN_CARD_TRANSACTION VALUES('1', TO_DATE('2018-01-01 22:30:55', 'YYYY-MM-DD HH24:MI:SS'), '89000', 'SKT', 'I13', '9203101937988', '신한카드', '일시불'); -- 거래..
[Oracle] CARD_TRANSACTION INDEX 생성 CREATE INDEX IDX_CARD_TRANSACTION ON CARD_TRANSACTION(CARD_NUM, CARD_TRANSACTION_TIME); 천만건의 데이터 속도가 미친듯이 빨라졌다. WITH WHOLE AS( SELECT CARD_TRANSACTION_TIME, CARD_TRANSACTION_AMOUNT, CARD_TRANSACTION_CONTENT, INDUSTRY_CODE FROM CARD_TRANSACTION WHERE CARD_NUM IN(SELECT CARD_NUM FROM CARD_CONTRACT WHERE RESI_NUM = 9203101937988) AND TO_CHAR(CARD_TRANSACTION_TIME, 'YYYY') = 2020 AND TO_CHAR(CARD_TR..
[Oracle] ORA-30009: Not enough memory for CONNECT BY operation 아하! 어차피 cross join 되버리는구남? cross join이 이상황에 쓰는게 맞나... 테이블 행 x 테이블 행 만큼 돌아버리는데. 흐음!! 뭐라해야할까. 아직 DB 초보라 정말 .. 헷갈린다. 나중에 다시 보고 웃을 날이 오길! -- 수행 전 오전 4:48 => Not enough memory for CONNECT BY operation -- ALTER SYSTEM SET PGA_AGGREGATE_TARGET = 1024M; => ORA-02097: ORA-47500: -- alter system set pga_aggregate_target = 100M scope = both; -- alter session set sort_area_size = 2G; => ORA-02248: invalid o..
[Oracle] 두 테이블 곱하기 : 길이가 다른 테이블을 from절에 두면, 두개의 테이블이 곱해진다 (랜덤 데이터 생성에 응용) SQL developer 열어서 직접 확인하면서 하길 바람. 그래야 의미가 다가온다. CREATE TABLE TMP_REG( REG VARCHAR2(10) ,RATE NUMBER(3,1) ); DELETE FROM TMP_REG; INSERT INTO TMP_REG SELECT '서울' AS REG, 18.8 AS RATE FROM DUAL UNION ALL SELECT '부산' , 6.6 AS RATE FROM DUAL UNION ALL SELECT '대구' , 4.8 AS RATE FROM DUAL UNION ALL SELECT '인천' , 5.7 AS RATE FROM DUAL UNION ALL SELECT '광주' , 2.9 AS RATE FROM DUAL UNION ALL SELECT '대전' ..