말하는감자의 데이터분석일지

프로그래머스 SQL Lv.2 나이 정보가 없는 회원 수 구하기

소소리 2022. 11. 22. 19:35

GENDER 컬럼은 비어있거나 0 또는 1의 값을 가지며 0인 경우 남자를, 1인 경우는 여자를 나타냅니다.

SELECT COUNT(USER_ID)
from USER_INFO
WHERE IF GENDER = 0, 

 

이런식으로 일단 쓰다가 현타가 왔다.

 

문제

USER_INFO 테이블에서 나이 정보가 없는 회원이 몇 명인지 출력하는 SQL문을 작성해주세요. 이때 컬럼명은 USERS로 지정해주세요.

 

SELECT COUNT(*) AS USERS

FROM USER_INFO

WHERE AGE IS NULL

SELECT COUNT(*) AS USERS
FROM USER_INFO
WHERE AGE IS NULL

 

왜 나는 이런 생각을 못하는 걸까..... 그건 아마도 인풋이 부족해서?ㅠㅜ

젠더가 1이든 0이든 중요한게 아니라 정보가 없는... 그걸 왜~ 캐치를 못하냐고

 

이름이 없는 동물의 아이디

select animal_type, ifnull(name,'No name') as name, sex_upon_intake
from animal_ins
order by animal_id

 

그룹별 조건에 맞는 식당 목록 출력하기

 

MEMBER_PROFILE와 REST_REVIEW 테이블에서 리뷰를 가장 많이 작성한 회원의 리뷰들을 조회하는 SQL문을 작성해주세요. 회원 이름, 리뷰 텍스트, 리뷰 작성일이 출력되도록 작성해주시고, 결과는 리뷰 작성일을 기준으로 오름차순, 리뷰 작성일이 같다면 리뷰 텍스트를 기준으로 오름차순 정렬해주세요.

 

뭐야.. 무서워....

 

SELECT MEMBER_NAME, REVIEW_TEXT, REVIEW_DATE
FROM REST_INFO
WHERE REVIEW_DATE ASC, REVIEW_TEXT ASC;

 

일단 나열만 해봄

 

https://velog.io/@sheltonwon/SQL%EC%97%B0%EC%8A%B5-%EA%B7%B8%EB%A3%B9%EB%B3%84-%EC%A1%B0%EA%B1%B4%EC%97%90-%EB%A7%9E%EB%8A%94-%EC%8B%9D%EB%8B%B9-%EB%AA%A9%EB%A1%9D-%EC%B6%9C%EB%A0%A5%ED%95%98%EA%B8%B0

 

[SQL연습] 그룹별 조건에 맞는 식당 목록 출력하기 - 프로그래머스

(프로그래머스) 그룹별 조건에 맞는 식당 목록 출력하기

velog.io

 

SELECT B.MEMBER_NAME, A.REVIEW_TEXT, A.PREVIEW_DATE
FROM REST_REVIEW A
JOIN (
	SELECT R.MEMER_ID, M.MEMBER_NAME, RANK() OVER(ORDER BY CNT DESC) AS RANKING
    FROM(
    	SELECT *, COUNT(MEMBER_ID) AS CNT
        FROM REST_REVIEW
        GROUP BY MEMBER_ID) AS R
    JOIN MEMBER_PROFILE M ON R.MEMBER_ID = M.MEMBER_ID) B
ON A.MEMBER_ID = B.MEMBER_ID
WHERE B.RANKING = 1
ORDER BY A.REVIEW_DATE;

이건 솔직히 음미하면서 좀 공부를 해야겠다...

이건 나 혼자 할 수 없어.......

 

근데 프로그래머스에 오답이라며...^^ WHY

 

SELECT m.member_name, r.review_test, TO_CHAR(r.review, 'YYYY-MM-DD') AS review_date
FROM rest_review r
JOIN
(
	
    FROM mamber_id, cnt
    FROM
    (
    	SELECT member_id, COUNT(*) AS cnt FROM rest_review
        GROUP BY member_id
        ORDER BY cnt DESC
        )
    WHERE ROWNUM = 1
) tmp
ON r.member_id = tmp.member_id
JOIN member_profile m
ON r.member_id = m.member_id
ORDER BY review_date, review_text

이것도 안된다 하고 어쩌란 말이냐 트위스트 추면서

https://honeynyancat.tistory.com/40

 

[프로그래머스 SQL] 그룹별 조건에 맞는 식당 목록 출력하기 / 오라클(Oracle)

📜 문제 설명 다음은 식당의 정보를 담은 REST_INFO 테이블과 식당의 리뷰 정보를 담은 REST_REVIEW 테이블입니다. MEMBER_PROFILE 테이블은 다음과 같으며 MEMBER_ID, MEMBER_NAME, TLNO, GENDER, DATE_OF_BIRTH는 회원 I

honeynyancat.tistory.com