Input/SQL

SQL 코딩테스트 연습 : SELECT _ 프로그래머스, 23/06/25

buji-learn 2023. 6. 26. 23:50

조건에 맞는 회원수 구하기

 '20 이상 29 이하' 그대로 썼다가 BETWEEN이 생각나서 시도했더니 같은 결과가 나왔다. 오늘 부스트코스 강의에서 YEAR 함수를 미리 다루는 것을 봤는데 내일 관련 강의 듣고 적용해봐야겠다.

select count(USER_ID) from USER_INFO

    where (JOINED >= '2021-01-01' and JOINED <= '2021-12-31') 
    where JOINED between '2021-01-01' and '2021-12-31'
    
        and (AGE >= 20 and AGE <= 29);
        and AGE between 20 and 29;

 

역순 정렬하기

select NAME, DATETIME from ANIMAL_INS
    order by ANIMAL_ID desc;

 

여러 기준으로 정렬하기

 '이름은 알파벳 순으로, 이름이 같은 경우는 나중에 들어온 순으로 정렬하라'라는 조건이 은근히 까다로웠다. 어떻게 처리해야할지 이것저것 해보다가 구글링을 했는데 생각보다 쉬웠다. 

select ANIMAL_ID, NAME, DATETIME 
    from ANIMAL_INS
    order by NAME asc, DATETIME desc; -- asc 생략가능