본문 바로가기

mysql5

Mysql 코딩테스트 준비 1. Limit SELECT name, datetime from animal_ins order by datetime LIMIT 5; // 5이면 위에서 1~5번까지 출력 2. COALESCE ( ifnull(컬럼, ' ') 도 똑같이 사용 됨) SELECT warehouse_id, warehouse_name, address, coalesce(freezer_yn, 'N') as FREEZER_YN from food_warehouse where address like "경기도%" order by warehouse_id /*COALESCE( 컬럼명, '임의출력값' ) -> NULL값을 다른 명칭으로 바꾸어주는 함수로 COALESCE( FREEZER, 'N' ) 작성하면 NULL값이 N으로 출력된다.*/ 3. .. 2023. 6. 14.
(MySQL LEVEL-2) 재구매가 일어난 상품과 회원 리스트 구하기 - 프로그래머스 USER_ID 가 재구매한 상품이 있는지 있다면 USER_ID와 PRODUCT_ID를 출력 위 테이블에서는 1번 유저가 3번,4번을 재구매 했고 2번이 4번을 재구매했다. 이와 같은 결과를 출력해라 이 문제를 풀기 앞서 알아야 하는 개념 GROUP BY 그룹바이는 컬럼리스트중 같다면 하나의 그룹으로 만들어 준다. - 위의 테이블에서 GROUP BY USER_ID로 처리하게 된다면 1 2 3 의 그룹으로 묶인다. 하지만 저 문제에서는 하나의 컬럼이 아닌 두 개의 컬럼이 밑에서 중복이 된다면 그 두 개의 컬럼을 기준으로 중복된 값만 묶이길 원한다. 그렇다면 GROUP BY뒤에 2개의 컬럼을 설정해 주면 된다. 답 SELECT USER_ID, PRODUCT_ID FROM ONLINE_SALE GROUP BY .. 2023. 5. 12.
(MySQL LEVEL-2) 자동차 평균 대여 기간 구하기 - 프로그래머스 이 테이블에서 CAR_ID 별로 평균 대여일이 7일 이상인 CAR_ID를 대여일이 내림차순으로 출력하고 대여일이 같은게 있다면 CAR_ID를 내림차순으로 출력해라 이 문제를 풀기 앞서 알아야 하는 함수 DATEDIFF( 날짜, 날짜 ) 두 날짜사이의 일 수를 계산 ROUND( 숫자, 숫자위치) 숫자의 어느지점에서 반올림을 할 지 뒤에 숫자를 적는다. SUM 합 GROUP으로 묶은 합 (집계함수) COUNT 갯수 GROUP으로 묶은 개수 (집계함수) 답 SELECT CAR_ID,ROUND(SUM(DATEDIFF(END_DATE, START_DATE)+1)/COUNT(END_DATE),1) AS AVERAGE_DURATION FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY GROUP B.. 2023. 5. 11.
SpringBoot-Mysql 연동 1. build.gradle 에 의존성 추가해주기 1-1 implementation 'mysql:mysql-connector-java' 1-2 implementation 'org.springframework.boot:spring-boot-starter-data-jpa' 2. yml 파일 경로 설정 - 기본 설정값으로 application.yml 파일로 되어있음 따로 다른 yml 파일로 설정하려면 기본 경로를 바꿔줘야 한다. - 망치옆에 있는 프로젝트 클릭 - Edit Configurations... 클릭 - ( --spring.profiles.active=설정이름) 을 입력하면 경로 설정이 완료된다. 3. 서버 환경 정보들을 설정하기 위하여 yml 파일 설정 Mysql을 설치하였다면 포트번호를 3306으.. 2023. 3. 10.
코드스테이츠 백엔드 부트캠프 43기 (32,33일차-SQL) Intelij 에서 MySQL에 데이터 삽입 데이터베이스를 연결을 확인, 데이터 추가, 변경, 검색 등을 통한 과제를 실시 하였다. CREATE 따로 schema.sql 문서를 작성하여 호출후 명령을 실행하도록 동작 1 : 작성한 문서의 위치를 참조여 file로 설정 하여 파일을 읽는다. 2 : split메소드를 사용하여 세미콜론을 기준으로 실행할 명령어를 String 배열에 담는다. 3 : excute()메소드를 사용하여 실행을 하면 명령이 실행되고 mysql에 데이터 저장 - Statement 클래스는 SQL 명령어를 실행하는 역할을 한다. JDBC : 자바에서 제공하는 데이터베이스와 연결하여 데이터를 주고 받을 수 있는 인터페이스 JDBC API 를 사용하여 제공하는 메소드를 통하여 DB와 연결하고.. 2023. 2. 1.