DS가 되기 위한 여정 👩‍💻
728x90
반응형

Data Science 109

[Elice SQL] 비연관 서브쿼리. 항상 on 안써도 됌. 그냥 대치 값 넣을 것

수정 전- 뭐가 문제일까.. manager_id를 어디로 넣어야 하는 지 잘 모르겠어..-- 급여가 8000미만인 직원의 관리자 아이디와 급여를 출력하는 쿼리를 작성하세요.select employee_id, salaryfrom EMPLOYEE where employee_id in ( select employee_id from EMPLOYEE where salary  수정 전- manager_id를 구해서 그냥 직원 아이디에 넣으면 됌. 굳이 조인 x-- 급여가 8000미만인 직원의 관리자 아이디와 급여를 출력하는 쿼리를 작성하세요.select employee_id, salaryfrom EMPLOYEE where employee_id i..

Data Science/SQL 2025.03.04

[Elice SQL] 서브쿼리 심화: 연관/비연관, 단일행/다중행

*elice 코딩 강의안*- 메인쿼리랑 관련이 없고, 따로 빼도 동작에 문제가 없음. - 연관 비연관이 출력이 어떻게 되느냐에 대한 것이지, 다르게 구분되는 게 x- 해당 값이- 서브쿼리 값이 있는 지 없는지만- 아래처럼 해도 돌아는 가지만,-- EXISTS문을 응용하여, 결제금액이 5000원 이상인 가게ID, 가게이름을 조회하는 쿼리를 작성해보세요.SELECT store_id, store_nameFROM STOREWHERE EXISTS (SELECT store_id FROM PAYMENT WHERE PAY_AMOUNT >= 5000)ORDER BY store_id;- 정답은 같은 칼럼끼리 명백하게 이어줌.-- EXISTS문을 응용하여, 결제금액이 5000원 ..

Data Science/SQL 2025.03.04

[Elice SQL] null은 in, = 연산자로 못 씀.. is null 로 해

-.. 하 이거 저번에도 틀렸던 거 같은데 그 사이에 까먹었나 보다...ㅎ - NULL 값은 비교 연산(= 또는 IN)에서 필터링되지 않음=> NULL 값을 포함하려면 IS NULL을 사용해야 함 수정 전select *from MEMBERleft outer join MEMBER_DTL using(member_id)where member_grade in ('NULL', 'BRONZE')order by member_id; 수정 후 - 이젠 까먹지좀 말자.. ㅎSELECT *FROM MEMBERLEFT OUTER JOIN MEMBER_DTL USING (member_id)WHERE member_grade IS NULL OR member_grade = 'BRONZE' -- is nullORDER BY membe..

Data Science/SQL 2025.03.03

[Elice SQL] 조인 join

- *ㅇ리스 강의 자료*- 그럼 사실 using도 쓸 필요없이 natural join 하면 되는 거 아님?  => 명시적이라서 on을 씀 - cross 생략되지만, on/using 없을 때만 크로스 조인임.   -- 3. 위에서 작성한 두 쿼리에서 ORDER BY를 제거 후, 중복을 제거하는 집합연산자로 결합하고 최종 결과에 대해 정렬을 해주세요.select f.version_id, f.version_content_front, b.version_content_backfrom FRONT_VERSION_HIST fleft outer join BACK_VERSION_HIST bon f.version_id = b.version_idunionselect b.version_id, f.version_content_f..

Data Science/SQL 2025.03.03

[프로그래머스 SQL] 데이터 타입 주의 할 것. (date는 left()-> X)

연도별 대장균 크기의 편차 구하기 수정 전- 뭐가 문제일까..- cte 집계함수 안된대서.. 유니언 안 하고 뺐는데..with recursive cte as ( select ID, left(DIFFERENTIATION_DATE, 4) as YEAR, SIZE_OF_COLONY FROM ECOLI_DATA )select c.YEAR, (max(e.SIZE_OF_COLONY)-min(e.SIZE_OF_COLONY)) as YEAR_DEV, e.ID from ECOLI_DATA e join cte c where c.id = e.id order by YEAR, YEAR_DEV; 수정 후1- WITH RECURSIVE → WITH로 변..

Data Science/SQL 2025.03.02

[Elice SQL] 다중행, 단일행 서브쿼리

- 서브쿼리 강의로 넘어왔는데.. 매번 그냥 냅다썼지 잘 몰라서 캡처본 올림- *엘리스 sql 강의임* - 기본 구조!!- 서브쿼리 먼저 실행되고 여러 번 실행 가능임.-- 사원 번호가 7인 사원보다 나이가 어린 사원의 모든 컬럼을 조회 하는 쿼리를 작성하세요.select *from empwhere birthdate > (select birthdate from emp where empnum = 7);   - 이거 좀 헷갈리는 듯..?-  > any() : 1개만 커도 되니깐 크려면 최소값보다만 커도 되고, 작으려면 최대값보다 작아야 하고 -> 내부적으로 모두 or 연산- > all() : 모든 값보다 커야 되니깐 최대값보다 커야 함. 반..

Data Science/SQL 2025.03.01

[프로그래머스 sql] date_format()안 해도 month() 가능

분기별 분화된 대장균의 개체 수 구하기 수정 전- 이전에 했던 것들 참고해가면서.. 써봤는데.. 연습에선 돌아갔는 데 문제를 제출하면 계속 안 된다. WITH QUARTERS AS ( SELECT ID, NTILE(4) OVER (ORDER BY DATE_FORMAT(DIFFERENTIATION_DATE, '%m')) AS QUARTER FROM ECOLI_DATA )SELECT CASE WHEN QUARTER = 1 THEN '1Q' WHEN QUARTER = 2 THEN '2Q' WHEN QUARTER = 3 THEN '3Q' ELSE '4Q' END AS QUARTER, COUNT(*) AS ECOLI_COUNTFROM QUA..

Data Science/SQL 2025.02.26

[프로그래머스 sql] left join, count()는 null을 0으로 셈

대장균들의 자식의 수 구하기수정 전- ... 일단.. 아래가 최선이긴 했는데 뭐가 문제일까...select p.id AS ID, (case when c.count(*) = 'null' then 0 else as CHILD_COUNT)from ECOLI_DATA pjoin ECOLI_DATA c on p.id = c.idwhere p.id = c.parent_idgroup by p.idorder by id; 수정 후 - ㅎ 오류가 너무 많아서.. 그거 짚고 수정본select p.id AS ID, (case when c.count(*) = 'null' then 0 -- count(*) null과 비교 x, count(*) = 0 else as CHILD_COUNT) -- else count(*) end ..

Data Science/SQL 2025.02.25
728x90
반응형