<프로그래머스 - SQL 고득점 Kit>

- Oracle


* SUM,MAX,MIN

 

1.

- 최대값 : MAX, 서브쿼리 이용


2.

- 최소값 : MIN, 서브쿼리 이용


 

3.

- 전체 행 개수 : count() 사용 

 

* count(ANIMAL_ID)와 count(*) 차이

  - ANIMAL_ID가 NULL 인 값을 제외하고 센다.

  - *은 NULL 포함해서 센다 !

 


 

4.

 

- NULL 제거 : COUNT(컬럼명) 은 NULL을 포함하지 않는다.

- 중복 제거 : DISTINCT 컬럼명

 


* IS NULL

 

1. 

- 정렬 : ORDER BY

- IS NULL 이용

 


2. 

 

- 정렬 : ORDER BY

- IS NOT NULL 이용

 


3. 

 

* NULL 치환함수

  - NVL(컬럼,'치환할 값') : NULL 이면 치환할 값으로 바꿈!

  - NVL2(컬럼,'0','1') : NULL이 아닐 경우 0, NULL일 경우 1


* GROUP BY

 

1. 

 

처음,, 2단계문젠데 괜히쫄았어,, 후

 


2. 

 

- GROUP BY를 이용하게 되면 조건은 WHERE이 아닌 HAVING을 써야한다.

 

* 이름이 없는 동물은 집계에서 제외하며 ,,, 이부분을 놓쳤다.

문제에서 '이때 ~~~' 이부분을 유심히 볼것 ****

자꾸 정렬도 놓친다... 결과는 이름순으로 조회해주세요.. 

 


3. 

- GROUP BY를 이용하게 되면 조건은 WHERE이 아닌 HAVING을 써야한다.

 

* 시간 가져오기

- 24시간제 : SELECT TO_CHAR(SYSDATE, 'HH24') SYS_HOUR24 FROM DUAL

- 12시간제 : SELECT TO_CHAR(SYSDATE,'HH12') SYS_HOUR12 FROM DUAL

 

- 분 : SELECT TO_CHAR(SYSDATE, 'MI') SYS_MINUTE FROM DUAL

  ->MI는,, MINUTE

- 초 : SELECT TO_CHAR(SYSDATE, 'SS') SYS_SECOND FROM DUAL

 

- 년 

  : SELECT TO_CHAR(SYSDATE, 'YYYY') SYS_YEAR4 FROM DUALYEAR -> 4자리

  : SELECT TO_CHAR(SYSDATE, 'YY') SYS_YEAR2 FROM DUAL -> 2자리

- 월 : SELECT TO_CHAR(SYSDATE, 'MM') SYS_MONTH FROM DUAL

- 일 : SELECT TO_CHAR(SYSDATE, 'DD') SYS_DATE FROM DUAL

 

요런식으로 쓰면 된다 

 


4. 

 

갑자기 뭐지 싶었다. 알고보니 레벨 4였음,,

여태 1,2 였잖아요,,!

 

계층형 쿼리를 통해서 0~23의 값을 가지고 있는 HOUR 컬럼을 가지고 있는 테이블을 만든다.

그리고 LEFT JOIN을 통해 만들어준 테이블에 ANIMAL_OUTS 붙인다.

그래야 0~23에 붙겠쥬? ~

그래서 ON에 HOUR로 해주는데, 이때 DATETIME에서 시간 추출해주며 설정한다

그롬 끝 

 

 

 

 

 

'모각코 > 2022_슈붕팥붕' 카테고리의 다른 글

3회차(01.11) - 결과  (0) 2022.01.11
3회차(01.11) - 목표  (0) 2022.01.11
2회차(01.06) - 목표  (0) 2022.01.06
1회차(01.04) - 결과  (0) 2022.01.04
1회차(01.04) - 목표  (0) 2022.01.04

회의 일자 : 

2022.01.06 20:30 ~ 23:30 


목표 : 

-  코딩테스트 대비 (프로그래머스)

'모각코 > 2022_슈붕팥붕' 카테고리의 다른 글

3회차(01.11) - 목표  (0) 2022.01.11
2회차(01.06) - 결과  (0) 2022.01.06
1회차(01.04) - 결과  (0) 2022.01.04
1회차(01.04) - 목표  (0) 2022.01.04
활동 일시별 계획  (0) 2022.01.04

<프로그래머스 - SQL 고득점 Kit>

- Oracle


* SELECT

 

1.


2.


3.

  - LIKE


4.

  - NOT


5.


6.

  - ORDER 조건 여러개일때


7.

  - 최소값 구하기(MIN), 서브쿼리 활용

 


코딩테스트에 대비하기 위해 SQL을 진행했다.

모든 SELECT 문제를 해결하였다. 

이로인해 데이터베이스, SQL문 작성에서 잊어버렸던 것을 공부하며 복습을 할 수 있었다.

'모각코 > 2022_슈붕팥붕' 카테고리의 다른 글

3회차(01.11) - 목표  (0) 2022.01.11
2회차(01.06) - 결과  (0) 2022.01.06
2회차(01.06) - 목표  (0) 2022.01.06
1회차(01.04) - 목표  (0) 2022.01.04
활동 일시별 계획  (0) 2022.01.04

회의 일자 : 

2022.01.04 20:30 ~ 23:30 


목표 : 

-  코딩테스트 대비 (프로그래머스)

'모각코 > 2022_슈붕팥붕' 카테고리의 다른 글

3회차(01.11) - 목표  (0) 2022.01.11
2회차(01.06) - 결과  (0) 2022.01.06
2회차(01.06) - 목표  (0) 2022.01.06
1회차(01.04) - 결과  (0) 2022.01.04
활동 일시별 계획  (0) 2022.01.04

1회차(01.04-20:30~23:30) 

  - 학습목표 :  코딩테스트 대비 (프로그래머스, 백준)

  - 방법 : Google Meet

 

2회차(01.06-20:30~23:30) 

  - 학습목표 :  코딩테스트 대비 (프로그래머스, 백준)

  - 방법 : Google Meet

 

3회차(01.11-20:30~23:30) 

  - 학습목표 : 코딩테스트 대비 (프로그래머스, 백준)

  - 방법 : Google Meet

 

4회차(01.13-20:30~23:30) 

  - 학습목표 : 코딩테스트 대비 (프로그래머스, 백준)

  - 방법 : Google Meet

 

5회차(01.18-20:30~23:30) 

  - 학습목표 : 코딩테스트 대비 (프로그래머스, 백준)

  - 방법 : Google Meet

 

6회차(01.20-20:30~23:30) 

  - 학습목표 : 코딩테스트 대비 (프로그래머스, 백준) 

  - 방법 : Google Meet

'모각코 > 2022_슈붕팥붕' 카테고리의 다른 글

3회차(01.11) - 목표  (0) 2022.01.11
2회차(01.06) - 결과  (0) 2022.01.06
2회차(01.06) - 목표  (0) 2022.01.06
1회차(01.04) - 결과  (0) 2022.01.04
1회차(01.04) - 목표  (0) 2022.01.04

+ Recent posts