SQL
-
Spring boot : data.sqlSpring Boot 🍃 2023. 12. 11. 00:01
참고한 블로그 application.yml 설정 spring: jpa: defer-datasource-initialization: true sql: init: mode: always spring.jpa.defer-datasource-initialization sql 파일 실행을 jpa hibernate 작업 완료 후에 할 지 여부 설정 spring.sql.init.mode sql 파일을 읽을지 여부 설정. in-memory database 가 아닌 데이터베이스를 사용하게 될 경우 , true 로 해주어야 sql 파일 자동 실행 가능
-
MySQL DB 생성, USER 생성 및 권한 입력 쿼리DB/MySQL 2023. 11. 30. 00:01
DB 목록 출력 show databases; DB 생성 create database DB_NAME; USER 생성 create user 'USER_NAME'@'localhost' identified by '비밀버노'; USER 확인 후 root 권한 주고 DB에 즉각 반영 select `user` from `mysql`.`user`; show grants for 'USER_NAME'@'localhost'; grant all on `DB_NAME`.* to 'USER_NAME'@'localhost' with grant option; flush privileges;
-
프로그래머스 : 가격대 별 상품 개수 구하기DB/MySQL 2023. 11. 26. 00:01
내 코드 SELECT (PRICE div 10000) * 10000 as PRICE_GROUP , COUNT(*) as PRODUCTS FROM PRODUCT GROUP BY PRICE_GROUP ORDER BY PRICE_GROUP 정수 값을 정수로 나누는 방법 div 함수 사용 select 10 div 3 -- 결과 : 3 floor(숫자) 함수 사용 ( 나머지 버림 ) select FLOOR(10/3) -- 결과 : 3 round(숫자, 자릿수) 함수 사용 ( 반올림 ) select ROUND(10/3); -- 결과 : 3 select ROUND(10/3, 1); -- 결과 : 3.3 truncate(숫자, 자릿수) 함수 사용 ( 나머지 버림 ) select TRUNCATE(10/3, 0); -- ..
-
프로그래머스: 주문량이 많은 아이스크림들 조회하기DB/MySQL 2023. 11. 26. 00:01
내 코드 SELECT FLAVOR FROM ( SELECT j.FLAVOR, (sum(j.TOTAL_ORDER) + sum(fh.TOTAL_ORDER)) as TOTAL_ORDERS FROM JULY j LEFT JOIN FIRST_HALF fh ON j.FLAVOR = fh.FLAVOR GROUP BY j.FLAVOR ) f order by f.TOTAL_ORDERS DESC limit 3; 또는 내 코드 2 SELECT FLAVOR FROM ( SELECT j.FLAVOR, (sum(j.TOTAL_ORDER) + sum(fh.TOTAL_ORDER)) as TOTAL_ORDERS FROM JULY j LEFT JOIN FIRST_HALF fh USING (FLAVOR) GROUP BY j.FLAVOR ..
-
프로그래머스: 특정 기간동안 대여 가능한 자동차들의 대여비용 구하기DB/MySQL 2023. 11. 26. 00:01
질문하기에서 많은 도움을 받은 코드 SELECT c.CAR_ID , c.CAR_TYPE , ROUND((c.DAILY_FEE * 30 * (100 - dp.DISCOUNT_RATE)) / 100) as FEE FROM CAR_RENTAL_COMPANY_CAR c LEFT JOIN CAR_RENTAL_COMPANY_DISCOUNT_PLAN dp ON c.car_type = dp.car_type WHERE c.car_type in ('세단', 'SUV') AND dp.DURATION_TYPE = '30일 이상' AND c.car_id not in ( SELECT car_id FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY WHERE END_DATE >= '2022-11-01' AND S..
-
프로그래머스: 이름이 없는 동물의 아이디DB/MySQL 2023. 11. 25. 00:01
내 코드 SELECT ANIMAL_ID FROM ANIMAL_INS WHERE NAME IS NULL ORDER BY ANIMAL_ID MySQL NULL 제어하기 🤓📝 where 에서 -- TABLE 테이블에서 column이 NULL 조건을 만족하는 모든 컬럼 출력 SELECT * FROM TABLE WHERE column IS NULL; -- TABLE 테이블에서 column이 NULL이 아닌 조건을 만족하는 모든 컬럼 출력 SELECT * FROM TABLE WHERE column IS NOT NULL select 에서 -- TABLE 테이블에서 column을 출력하는데, 값이 NULL인 데이터는 'no data' 출력 SELECT IFNULL(COLUMN, 'no data') as COLUMN F..
-
프로그래머스 : 과일로 만든 아이스크림 고르기DB/MySQL 2023. 11. 25. 00:01
다른사람 코드 _ 질문하기에서 찾음 🤓 SELECT FLAVOR FROM FIRST_HALF A JOIN ICECREAM_INFO B USING (FLAVOR) WHERE A.TOTAL_ORDER > 3000 AND B.INGREDIENT_TYPE REGEXP '^fruit+' ORDER BY TOTAL_ORDER DESC 정규식과 USING이라는 키워드를 사용한 풀이이다. 우와 🤓📝 USING 공부 USING은 ON 대신에 사용할 수 있는 키워드라고 한다. LEFT JOIN의 경우 같은 컬럼을 기준으로 두 테이블을 합치는데, 이때 ON을 사용하면 각 테이블에 있는 기준으로 한 컬럼들을 모두 가져와서 a.c_column , b.c_column 상태로 결과 테이블을 만들어주지만, USING을 사용하면 하나..