본문 바로가기

프로그래밍/SQL8

SQLD 합격 후기, 공부 방법 (+ 생활코딩 MySQL 강의 정리) 시험에 응시한 이유 '자기 분야에 시간, 돈 등을 얼마나 투자하는가'도 중요하다는 소리를 들었었고, 다른 공부하는 분들에 최소한 뒤쳐지고 싶지는 않아서 컴퓨터 관련 카테고리에서 상위권에 있는 책들을 한꺼번에 많이 구매했었다. 그중 자격증 관련 책은 하나가 정처기 책이었고 하나는 SQL 개발자 책이었다. 일단 베스트셀러에 있고 후기도 좋아 망설임 없이 책을 구매했다. 내가 처음 접한 DB는 서비스를 따라 만들어보며 mongoDB를 써봤는데 이후 DataBase Management System에 대해 더 잘 알고 싶었다. 책을 구매할 당시는 SQL이 DBMS의 종류이고, 많이 쓴다는 정도만 알고 나머지는 거의 처음 접했다. 공부한 방법 시험 몇 달 전 소마를 준비하면서(2차 코테에서 떨어졌지만) 프로그래머스.. 2023. 4. 10.
[SQL 고득점 Kit] 이름에 el이 들어가는 동물 찾기 / 대소문자 구별없이 LIKE ✏️ 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr ✏️ 정답 SELECT ANIMAL_ID, NAME FROM ANIMAL_INS WHERE UPPER(NAME) LIKE '%EL%' AND ANIMAL_TYPE = 'Dog' ORDER BY NAME; 대소문자 구별 없이 특정 문자열이 들어가는 값을 찾으려면 UPPER()이나 LOWER() 둘 중에 하나로 대소문자를 통일시켜준 후 위와 같이 찾으면 된다! 참고 자료 https://m.blog.naver.com/dg110/10179379359 🙂 공부하면서 정리한 글입니다. 잘못된 점이 있다면 피드.. 2023. 2. 12.
[SQL 고득점 Kit] DATETIME에서 DATE로 형 변환 / MySQL에서 날짜 형식 변환하는 법 정리(DATE_FORMAT 총정리, SUBSTR) / 주석 처리법 ✏️ 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr ✏️ 정답 SELECT ANIMAL_ID, NAME, DATE_FORMAT(DATETIME, '%Y-%m-%d') AS 날짜 FROM ANIMAL_INS ORDER BY ANIMAL_ID 2018-01-22 14:32:00 이와 같은 날짜 데이터 형식을 2018-01-22 이와 같이 바꿔주는 문제 날짜 데이터 형식을 변환하는 문제는 자주 볼 수 있고 여러 방법이 있어 이를 정리해보려고 한다. 참고로 날짜 함수 SYSDATE을 출력하면 2018-01-22 14:32:00와 같이 연, 월, 시, 분, .. 2023. 2. 11.
[SQL 고득점 Kit - SUM] 중복 제거하기 / NULL 값 제거 ✏️ 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr ✏️ 정답 SELECT COUNT(DISTINCT NAME) AS COUNT FROM ANIMAL_INS WHERE NAME IS NOT NULL 중복을 제거하고 COUNT 해주고 싶다면: DISTINCT NULL 값은 빼고 싶다면: IS NOT NULL 참고 사이트 Count total without duplicate using MySQL and PHP 2023. 1. 19.
[SQL 고득점 Kit - SELECT] 오프라인/온라인 판매 데이터 통합하기, UNION, IFNULL() ✏️ 문제 ✏️ 정답 SELECT DATE_FORMAT(SALES_DATE, '%Y-%m-%d') AS SALES_DATE, PRODUCT_ID, IFNULL(USER_ID, NULL) AS USER_ID, SALES_AMOUNT FROM ( SELECT SALES_DATE, PRODUCT_ID, USER_ID, SALES_AMOUNT FROM ONLINE_SALE UNION SELECT SALES_DATE, PRODUCT_ID, NULL, SALES_AMOUNT FROM OFFLINE_SALE ) A WHERE MONTH(SALES_DATE) = 3 ORDER BY SALES_DATE, PRODUCT_ID, USER_ID; 문제에서 'OFFLINE_SALE 테이블의 판매 데이터의 USER_ID 값은 N.. 2023. 1. 12.
[SQL 고득점 Kit - SELECT] 서울에 위치한 식당 목록 출력하기 / 소수점 자리수 지정하는 다양한 방법 / INNER JOIN, AVG, GROUP BY LIKE ✏️ 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr ✏️ 정답 SELECT INFO.REST_ID, INFO.REST_NAME, INFO.FOOD_TYPE, INFO.FAVORITES, INFO.ADDRESS, ROUND(AVG(REVIEW.REVIEW_SCORE), 2) AS SCORE FROM REST_INFO AS INFO INNER JOIN REST_REVIEW AS REVIEW ON INFO.REST_ID = REVIEW.REST_ID WHERE INFO.ADDRESS LIKE '서울%' GROUP BY INFO.REST_ID ORDER B.. 2023. 1. 10.