dev/db 10

[SQL] 기초 명령어 정리

이것저것 개발하니 기본도 생각이 안나는구나~~ - CREATE : 생성 - ALTER : 변경 - DROP : 삭제 데이터 베이스 생성(DB명:CAVE) : CREATE DATABASE CAVE; 데이터 베이스 삭제 : DROP DATABASE IF EXIST CAVE; 현재 사용중인 데이터베이스 확인 : SELECT DATABASE(); DB선택 : USE CAVE; 타입 - CHAR(값) : 고정 값 1~255 byte 고정 길이 문자형 - VARCHAR(값) : 변동 되는 값 1~65,535byte 가변 길이 문자형 - TINYTEXT : 1~255 byte - TEXT : 1~65.535 byte - MEDIUMTEXT : 1~16,777,215 byte - LONGTEXT : 1~4,294,96..

dev/db 2023.11.20

[SQL] 없어진 기록 찾기

Programmers / MySQL / Lv.3 SELECT O.ANIMAL_ID AS ANIMAL_ID, O.NAME AS NAME FROM ANIMAL_INS AS I RIGHT OUTER JOIN ANIMAL_OUTS AS O ON I.ANIMAL_ID = O.ANIMAL_ID WHERE I.ANIMAL_ID IS NULL ORDER BY O.ANIMAL_ID ASC; [해석] SELECT O.ANIMAL_ID AS ANIMAL_ID, O.NAME AS NAME : 입양을 간 기록은 있지만, 보호소에 들어온 기록이 없다는 것은 'ANIMAL_OUTS'의 동물 데이터를 조회 FROM ANIMAL_INS AS I RIGHT OUTER JOIN ANIMAL_OUTS AS O ON I.ANIMAL_ID =..

dev/db 2023.10.16

[DB] h2 database 실행 방법

경량 DB로 빠르게 테이블을 만들고 확인하는 용도로 사용중 PC : MAC 검색 : h2 database window, mac 중 본인 컴퓨터에 맞는 OS에 맞게 다운로드 (현재 PC는 MAC이기 때문에 'All Platforms'선택) 다운로드 완료 된 후 터미널로 'bin'폴더 열기 h2.sh파일의 권한 변경(모든 권한이 실행이 가능하도록) : chmod -R 755 ./h2.sh 실행은 sh파일을 명령 창에서 입력해주면 바로 실행 된다 실행 된 웹 콘솔창 [window] : 윈도우는 'h2.bat'을 실행 : $ chmod -R 755 h2.bat : $ ./h2.bat 이후, '연결' 버튼을 누르면 실행되고 쿼리문을 실행하면 끝 추가로 '설정' 버튼을 누르면 포트번호와 다른 컴퓨터에서 접근이 가능..

dev/db 2023.10.13

[SQL] 대여 기록이 존재하는 자동차 리스트 구하기

Programmers / MySQL / Lv.3 SELECT DISTINCT N.CAR_ID AS CAR_ID FROM CAR_RENTAL_COMPANY_CAR AS N INNER JOIN CAR_RENTAL_COMPANY_RENTAL_HISTORY AS H ON N.CAR_ID = H.CAR_ID WHERE N.CAR_TYPE = '세단' AND DATE(H.START_DATE) LIKE '2022-10-%' ORDER BY N.CAR_ID DESC; [해석] SELECT DISTINCT N.CAR_ID AS CAR_ID : 자동차 ID의 중복이 없어야 하기 때문에 앞에 'DISTINCT' 사용 FROM CAR_RENTAL_COMPANY_CAR AS N INNER JOIN CAR_RENTAL_COMPA..

dev/db 2023.10.12

[SQL] 즐겨찾기가 가장 많은 식당 정보 출력하기

Programmers / MySQL / Lv.3 더보기 정말 어려운 문제 였다 나름 서브쿼리에 REST_ID를 찾아내어 도출하고 싶었지만.. 아래의 방법으로 도출하였다 SELECT FOOD_TYPE, REST_ID, REST_NAME, FAVORITES FROM REST_INFO WHERE (FOOD_TYPE, FAVORITES) IN (SELECT FOOD_TYPE, MAX(FAVORITES) FROM REST_INFO GROUP BY FOOD_TYPE) ORDER BY FOOD_TYPE DESC; [해석] SELECT FOOD_TYPE, REST_ID, REST_NAME, FAVORITES FROM REST_INFO WHERE (FOOD_TYPE, FAVORITES) IN (SELECT FOOD_TY..

dev/db 2023.10.12

[SQL] 조건에 맞는 사용자와 총 거래금액 조회하기

Programmers / MySQL / Lv.3 SELECT USER_ID, NICKNAME, SUM(PRICE) AS TOTAL_SALES FROM USED_GOODS_BOARD AS B INNER JOIN USED_GOODS_USER AS U ON B.WRITER_ID = U.USER_ID WHERE B.STATUS = 'DONE' GROUP BY WRITER_ID HAVING SUM(PRICE) >= 700000 ORDER BY TOTAL_SALES ASC; [해석] SELECT USER_ID, NICKNAME, SUM(PRICE) AS TOTAL_SALES : 총 판매가격이기 때문에 가격(PRICE)들의 합을 구함 FROM USED_GOODS_BOARD AS B INNER JOIN USED_GOO..

dev/db 2023.10.12

[SQL] 조건별로 분류하여 주문상태 출력하기

Programmers / MySQL / Lv.3 더보기 5월 1일 기준이라는 말이 정말 이해가 가지 않았다 그래서 PRODUCE_DATE를 5월 1일 기준으로 잡아야 하나 고민 하는 시간이 있었고, 입고날짜라는 컬럼이 있는 것이 무슨 의미일까 고민하였다 물건을 생산하면 '생산날짜'가 있을 것이고, 그 생산한 물건을 출고하면 '출고날짜'가 있을텐데 '입고날짜'는 무엇을 의미하는 것인지... 반품을 뜻하는 것일까? 무튼 여러 고민 끝에 아무것도 되지 않기 때문에 문제의 지시대로 값을 출력하였더니 되었다 너무 고민하지 말자 SELECT ORDER_ID, PRODUCT_ID, DATE_FORMAT(OUT_DATE, '%Y-%m-%d') AS OUT_DATE, CASE WHEN OUT_DATE '2022-05-0..

dev/db 2023.10.12

[SQL] 있었는데요 없었습니다

Programmers / MySQL / Lv.3 SELECT I.ANIMAL_ID AS ANIMAL_ID, I.NAME AS NAME FROM ANIMAL_INS AS I INNER JOIN ANIMAL_OUTS AS O ON I.ANIMAL_ID = O.ANIMAL_ID WHERE I.DATETIME > O.DATETIME ORDER BY I.DATETIME ASC; [해석] SELECT I.ANIMAL_ID AS ANIMAL_ID, I.NAME AS NAME : 동물의 아이디, 이름 출력 FROM ANIMAL_INS AS I INNER JOIN ANIMAL_OUTS AS O ON I.ANIMAL_ID = O.ANIMAL_ID : 입양 보낸 동물의 정보 필요 : 동물 정보와 입양 보낸 동물 조인 WHE..

dev/db 2023.10.11

[SQL] 카테고리 별 도서 판매량 집계하기

Programmers/MySQL/Lv.3 SELECT N.CATEGORY AS CATEGORY, SUM(S.SALES) AS TOTAL_SALES FROM BOOK AS N INNER JOIN BOOK_SALES AS S ON N.BOOK_ID = S.BOOK_ID WHERE S.SALES_DATE LIKE '2022-01-%' GROUP BY N.CATEGORY ORDER BY CATEGORY ASC; [해석] SELECT N.CATEGORY AS CATEGORY, SUM(S.SALES) AS TOTAL_SALES : 카테고리 표출 : 전체 판매량이기 때문에 SUM(S.SALES)하여 판매량의 합 도출 FROM BOOK AS N INNER JOIN BOOK_SALES AS S ON N.BOOK_ID =..

dev/db 2023.10.11
728x90
반응형