슈뢰딩거의 고등어

[프로그래머스] SQL 고득점 키트 본문

알고리즘

[프로그래머스] SQL 고득점 키트

슈뢰딩거의 고등어 2022. 2. 4. 14:29

SQL 기입 순서

select >> from >> where >> group by >> having >> order by >> limit

 


중복제거

 select count(distinct name) from animal_ins where name != 'NULL';

case 사용법

select animal_type,
	case
    	when name is not null
        	then name
        else
        	'No name'
        end as name,
        sex_upon_intake 
    from animal_ins;

date_format()

select animal_id, name, date_format(datetime, '%Y-%m-%d') from animal_ins;

having

select name, count(name) from animal_ins
	group by name
    having count(name) >= 2
    order by name;

JOIN 을 사용할 때 주의할 점

1. 처음에 left join 을 사용했으면 모든 조인들은 left join 을 사용한다.

2. left join 은 조인 순서가 결과에 영향을 미친다. 따라서, 결과로 필요한 컬럼의 갯수가 많은 순서대로 조인을 해준다.

'알고리즘' 카테고리의 다른 글

DFS (순열, 조합)  (0) 2022.02.08
[백준] 17837 새로운 게임2  (0) 2022.02.07
[백준] 14916 거스름돈 (DP)  (0) 2022.02.04
[백준] 1010 다리놓기 (조합의 수) n개에서 m개 뽑기  (0) 2022.02.03
[백준] 9625 BABBA  (0) 2022.02.03
Comments