본문 바로가기

mysql17

[SQL문법] UNION, UNION ALL / 친구가 가장 많은 사람 구하기 - 602. Friend Requests II SELECT문 결과를 합치기위해 UNION, UNION ALL을 사용하면 된다. 차이점 UNION 사용시 중복을 제거하고, 합쳐져서 출력됨 UNION ALL 사용시 중복까지 모두 포함해서 출력됨 조건 1️⃣ 각 쿼리의 컬럼 수와 데이터 타입이 일치해야 한다. 2️⃣ 첫 번재 쿼리의 별칭(AS)으로 결과가 출력된다. 두번째 쿼리는 별칭을 생략할 수 있고, 별칭을 지정해도 첫번째 쿼리의 별칭으로 결과가 출력된다. 3️⃣ ORDER BY는 쿼리 마지막에 사용하고, 합쳐진 모든 결과를 정렬한다. 별칭 및 컬럼 순번으로 정렬 가능 (A.col 불가능) SELECT 'park' AS last_name -- 첫번째 쿼리의 별칭으로 출력됨 , salary AS sal FROM emp GROUP BY dep UNION .. 2023. 1. 17.
[SQL문법] SET 변수 사용하기 / MySQL SET 문법 SET @변수명 = 변수값; --변수 선언, 변수값 입력 SET @변수명 := 대입값; --변수 선언, 변수에 넣을 값 SELECT @변수명; --변수 출력 SET함수 예시1 - 프로그래머스 문제 0시부터 23시까지 조회하려고 하지만 테이블에 0~6시 데이터가 없어서 SET함수로 만들어주려고 한다. SET @HOUR = -1 -- HOUR이라는 변수에 -1을 넣어둠 SELECT (@HOUR := @HOUR +1) AS HOUR -- -1을 넣어둔 HOUR에 1씩 대입하면 0,1,2,3..이 HOUR에 입력된다. FROM animal_outs WHERE @HOUR < 23; -- 22+1=23으로 끝나는 조건 입력 https://dataanalysisdot.tistory.com/77 [프로그래.. 2023. 1. 5.
[프로그래머스] Lv4. 저자 별 카테고리 별 매출액 집계하기 https://school.programmers.co.kr/learn/courses/30/lessons/144856 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 정답코드 SELECT A.author_id, A.author_name, B.category, SUM(BS.sales * B.price) AS 'TOTAL_SALES' FROM book B JOIN author A ON B.author_id = A.author_id JOIN book_sales BS ON B.book_id = BS.book_id WHERE sales_date LIKE '202.. 2022. 12. 18.
[프로그래머스] Lv2.조건에 맞는 도서와 저자 리스트 출력/Lv3. 카테고리 별 도서 판매량 집계 Lv2.조건에 맞는 도서와 저자 리스트 출력하기 / JOIN https://school.programmers.co.kr/learn/courses/30/lessons/144854 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 정답코드 SELECT book_id, author_name, DATE_FORMAT(published_date, '%Y-%m-%d') PUBLISHED_DATE FROM book B JOIN author A ON B.author_id = A.author_id WHERE B.category = '경제' ORDER BY published_d.. 2022. 12. 16.
[SQL 문제] 요일별 매출액, 최초/마지막 주문일, 요일별 매출액 평균 1. 요일별 매출액 집계. 매출액은 반올림하여 소수점 둘째자리까지만 출력 SELECT day , ROUND(SUM(total_bill)) as 매출액 FORM tips GROUP BY day -- 요일별 Q. 아래 형식에 맞춰 요일별, 시간대별 매출액을 집계해주세요. 매출액은 반올림하여 소수점 둘째자리까지만 출력해주세요. day lunch dinner Sun Sat Thur Fri SELECT day, round(sum(if(time = "Lunch", total_bill, 0)),2) as Lunch, round(sum(if(time = "Dinner", total_bill, 0)),2) as Dinner FROM tips GROUP BY day 2. 첫번째 주문일자(min), 마지막 주문일자(max).. 2022. 12. 15.
[프로그래머스] Lv3. 있었는데요 없었습니다 / 없어진 기록 찾기 💡문제 - 있었는데요 없었습니다 https://school.programmers.co.kr/learn/courses/30/lessons/59043 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr # 보호 시작일보다 입양일이 더 빠른 데이터 조회 SELECT A.animal_id, A.datetime, B.datetime FROM animal_ins A LEFT JOIN animal_outs B ON A.animal_id = B.animal_id WHERE A.datetime > B.datetime ORDER BY A.datetime 정답코드 SELECT A.. 2022. 12. 1.