전체 글 171

35. IF문(CASE)

요약 1. CASE WHEN - THEN - ELSE - END 로 IF문을 만들 수 있다. 2. DECODE보다 CASE 에 익숙해져보자 지난번엔 DECODE로 IF문을 구현했는데 이번엔 CASE로 구현한다. 이거는 조금 더 알아보기는 쉬워보인다. CASE WHEN 'A' THEN 'B' ELSE 'C' END A면 B가 되고 그 이외엔 C를 한다. 그러나 DECODE보다 코드가 길어서 나는 DECODE가 더 좋아보인다.(공부 더 해보니깐 CASE가 더 기능이 많아보임) 결측치도 찾아서 잘 구분해줄 수 있다. DECODE도 마찬가지로 잘 된다. 그런데 배우다보니깐 CASE가 명확히 좋은 것이 있었다. 그것은 바로 사칙연산이 가능하다는 것!!!!! 이것은 너무 큰 장점이라 이젠 DECODE보단 CASE ..

코딩/SQL 2022.05.31

34. IF문(DECODE)

요약 1. SQL에서 IF문은 DECODE로 표현 2. 문자, 숫자형 모두 가능하다. 이번 단원은 너무 유용한 곳이다. IF문을 DECODE로 구현하는 단원이다. DECODE(A, B, B', C, C',D)라면 A에서 B면 B'실행, C면 C'실행을 하게 된다. B, C 모두 아니라면 D을 출력하게 된다. 이번엔 짝수와 홀수를 구분하는 코드이다. 순서만 잘 본다면 어렵지 않다. 문자열도 가능하다. 아래는 SALESMAN이면 보너스 없음, 다른 사람에겐 5000 보너스이다. 혹시 대문자/소문자가 섞여있을까봐 LOWER를 추가하였다.

코딩/SQL 2022.05.31

33. NULL 값 대신 다른 데이터 출력하기(NVL, NVL2)

요약 1. 필요해보이는 것을 먼저 공부해보자 2. 결측치는 NVL, NVL2로 고를 수 있다. 갑자기 33과로 넘어온 건 중간에 있는 내용들이 덜 중요해보였다... 순서대로 푸는게 좋을거같긴한데 뒷부분이 나의 코딩 경험에서 더 유용할 것 같아 먼저 해본다. 이번에는 결측치 대신 다른 값을 출력하는 것을 보자 이전에 배운 것 같은데 다른 점이 있는지 확인해보자 결측치때문에 다른 변수에 영향을 주는 경우가 있다. 결측치때문에 두 변수의 합이 제대로 나오지 못했다. 하지만 아래와같이 NVL로 조금은 정확하지않지만 결측치를 보정한 값을 보여줄 수 있다. NVL2는 IFELSE로 생각하면 더 좋다. NVL2(A,B,C)에서 a가 결측치가 아니면 B를 실행, 결측치면 C를 실행한다. NVL과 NVL2를 적절히 사용..

코딩/SQL 2022.05.31

27. Weather Observation Station 13

두가지 유형이다. 해당 범위 내의 STATION의 LAT_N값의 합을 구하는 문제이다. WHERE에서 범위를 찾고, SUM으로 합계를 구하자 첫시도에서는 한번에 될 줄알고 아래와 같이 작성했는데 틀렸다.. 아마 두가지를 한번에 쓰는것은 안되나보다. 그래서 두번째 시도에서는 LAT_N범위를 두가지로 나눈뒤 AND로 묶었다. ROUND도 빠뜨리지말고 써주면 정답이 된다.

23. 반올림해서 출력하기(ROUND)

요약 1. ROUND로 반올림할 수 있다. 코딩테스트에서 활용했던 ROUND 함수이다. 반올림이 가능하며 반올림 하는 곳을 지정해서 정해줄 수 있다. 자리수를 지정하면 해당 위치에서 반올림을 진행한다. 아래와 같이 소수점 2번재에서 반올림이 가능하다. 음수로 쓰면 소수점이 아닌 정수쪽으로 간다. 다만 주의할 것은 0을 넣으면 아무일도 일어나지 않는 것을 기억하자 (0은 점의 위치라서 아무 변화가 없다)

코딩/SQL 2022.05.30