본문 바로가기

db19

[ORACLE] 특정 컬럼 기준으로 중복데이터 제거 (ROW_NUMBER() OVER(PARTITION BY _ ORDER BY _)) 1. ROW_NUMBER 함수 : ROW_NUMBER() OVER(PARTITION BY _ ORDER BY _) PATITION 으로 컬럼을 그룹핑하고 정렬하여 순번을 지정해 주는 함수이다 - 사용법 ROW_NUMBER() OVER(PARTITION BY [그룹핑할 컬럼] ORDER BY [정렬할 컬럼] [ASC/DESC]) 2. 특정 컬럼 기준으로 하나의 행만 추출하기 - 테이블 구성 - 각 구매 내역(BUY_NAME) 별 최근 날짜 내역 조회 쿼리 SELECT BUY_NAME ,BUY_PRICE ,BUY_DATE FROM( -- 1) ROW_NUMBER 사용하여 구매내역별 일자 내림차순으로 순번 지정 SELECT BUY_NAME ,BUY_PRICE ,BUY_DATE ,ROW_NUMBER() OVER.. 2023. 5. 3.
[ORACLE] 주말과 공휴일 제외한 근무일(평일) 날짜 구하기(CONNECT BY LEVEL) 화면단에서 날짜를 선택하여 저장할 때 선택한 날짜가 주말이나 공휴일일 경우 그 다음 근무일(평일)로 돌려줘야하는 상황이 생겼다. 그래서 주말과 공휴일을 제외한 날짜를 구하는 쿼리를 작성해보았다! * 2022년 9월 기준 날짜 입니다. 1. 이번달의 주말을 제외한 평일 날짜 구하기 SELECT TM.DATES -- 날짜 ,TM.DAYS -- 요일 FROM (SELECT TO_CHAR(START_DT + LEVEL - 1, 'YYYY-MM-DD') DATES -- 날짜 ,TO_CHAR (START_DT + LEVEL - 1, 'D') DAYS -- 요일 FROM (SELECT TRUNC(SYSDATE,'MM') START_DT -- 이번달 시작 년월일 ,TO_NUMBER(TO_CHAR(LAST_DAY(SYS.. 2022. 9. 20.
[ORACLE] ORDER BY 와 ROWNUM 함께 사용시 유의사항 ROWNUM으로 채번을 할때 ORDER BY를 사용하는 경우 확인해야 될 사항에 대해 적어본다! 1. 테스트 테이블 데이터 2. ROWNUM 사용 (정렬 X) SELECT ROWNUM ,ID ,NAME FROM SAMPLE 3. ROWNUM 사용 + ORDER BY 사용, NAME 오름차순 정렬 1) SELECT 문에 바로 ROWNUM 과 ODER BY 동시 사용 SELECT ROWNUM ,ID ,NAME FROM SAMPLE ORDER BY NAME ASC 2) ODER BY 로 선 정렬한뒤 SELECT 하면 ROWNUM 사용 SELECT ROWNUM ,A.* FROM ( SELECT ID ,NAME FROM SAMPLE ORDER BY NAME ASC ) A 3-1번 처럼 ROWNUM과 ORDER B.. 2022. 5. 3.
[ORACLE] 전체 테이블 조회, 코멘트 조회 - 테이블 조회 -- 전체 테이블 목록 SELECT * FROM ALL_ALL_TABLES SELECT * FROM DBA_TABLES SELECT * FROM ALL_OBJECTS WHERE OBJECT_TYPE = 'TABLE' -- 접속한 계정의 테이블 조회 SELECT * FROM TABS SELECT * FROM USER_OBJECTS WHERE OBJECT_TYPE = 'TABLE' SELECT * FROM USER_TABLES -- 테이블 코멘트 조회 SELECT * FROM USER_TAB_COMMENTS --전체 테이블 코멘트 조회 SELECT * FROM ALL_TAB_COMMENTS -- 접속 계정의 전체 테이블 코멘트 조회 - 컬럼 조회 SELECT * FROM COLS -- 전체 .. 2022. 3. 30.
[ORACLE] 쿼리에 작은 따옴표(') 쓰기 SQL로 값을 넣을때 it's 같이 작은 따옴표(')가 포함된 값을 넣는 경우가 있다. 이런 경우 작은따옴표(')를 하나 더 넣어주면 된다. SELECT 'It''s me' AS ME FROM DUAL; 2022. 2. 22.
반응형