반응형 SQL186 UNION, UNION ALL 사용법, 예제 & 차이점 UNION, UNION ALL은 여러 조회한 결과를 합쳐주는 역할을 하는데 SELECT * FROM TB1 UNION(혹은 UNION ALL) SELECT * FROM TB2 이런 식으로 조회한 결과를 합칠 수 있다 예제로 사용될 테이블과 쿼리는 위를 확인해주면 되는데 보면 두 테이블은 모두 NAME이 김철수, AGE가 30인 값을 제외하면 모두 다른 값들을 가지고 있다 UNION, UNION ALL을 사용해서 두 테이블을 모두 조회해본 뒤 결과를 합쳐보자 먼저 UNION의 경우에는 두 결과를 합치면서 중복 값은 제거하는데 TB1과 TB2에 모두 김철수, 30이 들어간 값이 있으므로 김철수는 두 줄이 아닌 한 줄만 나오는 것이 보인다 즉 UNION은 중복을 제거한 뒤 조회한 결과들을 합치는 것! 다음은 .. 2019. 12. 9. INNER JOIN, OUTER JOIN(LEFT, RIGHT, FULL) 예제부터 차이까지 여기 NAME과, AGE 형태의 값을 받는 테이블 TB1, TB2가 있는데 TB1에는 4줄의 값을 TB2에는 3줄의 값을 삽입했다 이 두 테이블을 이용해 INNER JOIN과 OUTER JOIN의 예제 및 차이점을 알아보자 1. INNER JOIN INNER JOIN은 select * from 테이블1 inner join 테이블2 on 테이블1.컬럼 = 테이블2.컬럼 이런 식으로 사용하는데 on 뒤에 조건이 맞는 내용만 가져온다 TB1의 NAME과 TB2의 NAME이 같은 경우는 김철수밖에 없으니 김철수만 나오게 된다는 얘기다 2. LEFT, RIGHT OUTER JOIN outer join은 한쪽 테이블에 값이 있을 경우에 다른쪽 테이블이 조건에 맞지 않아도 가져오게 되는데 left는 왼쪽, right.. 2019. 12. 5. 오라클 NVL, NVL2 사용방법 및 예제 오라클에서 NVL은 값이 NULL이라면 설정한 값이 나오고 NULL이 아니라면 값이 그대로 나오게 되는데 사용방법은 아래와 같다 ORACLE NVL 사용 시 SELECT NVL('값','NULL일 시 값') FROM 테이블명 -- 실제 사용 시 -- SELECT NVL('','NULL_입니다') SAY FROM DUAL -- 출력 시 -- SAY NULL_입니다 NVL로는 NULL일 경우에만 값을 지정해 줄 수 있는 만큼 NULL이 아닐 경우에도 특정 값을 지정해 주려면 DECODE를 사용하는 것이 아니라 NVL2를 사용해야 하는데 사용방법은 아래와 같다 ORACLE NVL2 사용 시 SELECT NVL2('값', 'NULL이 아닐 경우', 'NULL일 경우') FROM 테이블명 -- 실제 사용 시 SE.. 2019. 10. 17. 오라클 DECODE 사용방법 및 예제 오라클에서 DECODE는 값을 가지고 설정한 값과 비교해 맞으면 그 값이 나오게 되고 조건에 맞지 않을 시에도 값을 설정해 그 값이 나오게 할 수 있는데 프로그래밍 언어에서 유사한 부분을 꼽아보자면 if ~ else if ~ else 를 생각하면 이해가 바로 될 것이다 DECODE는 아래 코드처럼 사용하면 되는데 ORACLE DECODE 사용 시 DECODE('값','조건1','조건 1일시 값') -- 여기까지가 최소 필요 FROM TABLE; DECODE('값','조건1','조건 1일시 값','조건2','조건 2일시 값', '조건에 맞는 값이 없을 시') AS DECODE_TEST_COLUMN2 FROM TABLE; -- 조건은 계속 추가 가능 이런 식으로 사용하는데 최소 필요한 부분은 상단의 DECO.. 2019. 10. 17. 오라클 TO_CHAR 사용방법 ORACLE에서 TO_CHAR는 숫자나 날짜를 원하는 형태의 데이터로 만들 수 있는데 TO_CHAR(값, 'FORMAT'); 이런 식으로 사용한다 왼쪽이 값이고 오른쪽이 어떤 형태로 만들지에 대한 포맷이다 만약 FORMAT 없이 TO_CHAR(값); 만 사용한다면 값을 문자로 바꾸게 된다 다음으로 많이 쓰는 년월일 시분초를 만들어 보자면 TO_CHAR(SYSDATE, 'YYYY/MM/DD HH24:MI:SS'); 이런 식으로 사용한다 자주 사용하는 FORMAT들로는 날짜 포맷과 숫자 포맷이 있는데 차례대로 알아보자면 TO_CHAR(값); -- 숫자를 문자로 변경 TO_CHAR(SYSDATE, 'AM'); TO_CHAR(SYSDATE, 'PM'); -- 값이 오전/오후인지 표시 TO_CHAR(SYSDATE.. 2019. 10. 15. 오라클 TO_DATE 사용방법 ORACLE에서 DATE 타입의 컬럼에 값을 넣을 때 대부분은 SYSDATE를 사용하지만 특정 날짜값을 넣어줘야 하는 경우가 있는데 그 경우에는 TO_DATE를 사용해야 한다 TO_DATE('날짜값', 'FORMAT'); 위와 같이 사용하는데 삽입 시에는 아래와 같이 사용해주면 된다 INSERT INTO TEST(DATE_COLUMN) VALUES(TO_DATE('2019/10/15 21:31:10', 'YYYY/MM/DD HH24:MI:SS')); 월의 경우에는 월 약자로 나오게 하고 싶다면 MM 대신 MON 월의 풀 네임이 나오게 하고싶다면 MM 대신 MONTH를 넣어주면 된다 시분초는 HH12는 12시간 HH24는 24시간이며 HH부분에 넣어주면 된다 혹여나 조회 시에 DATE 타입으로 받고 싶다면.. 2019. 10. 15. 이전 1 ··· 23 24 25 26 27 28 29 ··· 31 다음 반응형