[프로그래머스] 자동차기록에서 장기/단기 대여 구분하기 | DATEDIFF, SQL IF문
·
PS/BOJ&Programmers
개요이 문제의 핵심은대여 시작일이 2022년 9월이어야 한다. ➡️ date_format 함수로 DATE형 원하는 형식으로 수정하기장기/단기 기간은 30일이 기준이다. ➡️ datediff 함수와 if문 이용하기 DATEDIFF날짜의 차이를 일(day)로 환산해주는 함수. datediff(date1, date2) 계산은 date1 - date2로 진행된다. 음수는 0으로 도출된다. IF문if문은 SELECT와 WHERE 절에 사용할 수 있다. IF문if(조건, 참일 때 결과, 거짓일 때 결과)if(datediff(end_date,start_date)  중첩 IF문if(조건, 참, if(조건, 참, 거짓))if(score 전체 코드SELECT history_id, car_id, date_format(sta..
[프로그래머스] 자동차 종류 별 특정 옵션이 포함된 자동차 수 구하기 | LIKE 사용법
·
PS/BOJ&Programmers
개요SQL의 LIKE문은 주로 쿼리문 WHERE와 함께 사용되며, 일치하는 컬럼을 찾을 때 사용한다. 해당 문제처럼, 컬럼에 다양한 정보가 있을 때 '통풍시트', '열선시트', '가죽시트' 등 특정 내용을 걸러내야 하는 경우에 사용하기 좋다.    LIKE 사용법-- A로 시작하는 문자 찾기 -- where 컬럼명 like 'A%'-- A로 끝나는 문자 찾기 --where 컬럼명 like '%A'-- A를 포함하는 문자 찾기 --where 컬럼명 like '%A%'-- A로 시작하는 두 글자의 문자 찾기 --where 컬럼명 like 'A_'-- 첫 번째 문자가 'A'가 아닌 모든 문자열 찾기 --where 컬럼명 like '[^A]'-- 첫 번째 문자가 'A' or 'B' or 'C'인 문자열 찾기wh..
[프로그래머스] 131530. 가격대 별 상품 개수 구하기
·
PS/BOJ&Programmers
문제PRODUCT 테이블에서 만원 단위의 가격대 별로 상품 개수를 출력하는 SQL 문을 작성해주세요. 이때 컬럼명은 각각 컬럼명은 PRICE_GROUP, PRODUCTS로 지정해주시고 가격대 정보는 각 구간의 최소금액(10,000원 이상 ~ 20,000 미만인 구간인 경우 10,000)으로 표시해주세요. 결과는 가격대를 기준으로 오름차순 정렬해주세요. group by기본 문제다.문제를 잘 보면 만원 단위의 가격대 별로 상품 개수를 출력해야 한다.상품 개수는 예시에 잘 나와있듯이 product_id를 집계 함수로 잘 세어주면 된다. 만원 단위의 가격대 별로 조작하기 위해서는, 현재 DB에 저장된 price 값을 조정하고, GROUP BY해야한다. SQL Integer 조작14000, 23000 이런 값을 ..
[프로그래머스] 조건에 부합하는 중고거래 댓글 조회하기
·
PS/BOJ&Programmers
문제USED_GOODS_BOARD와  USED_GOODS_REPLY 테이블에서 2022년 10월에 작성된 게시글 제목, 게시글 ID, 댓글 ID, 댓글 작성자 ID, 댓글 내용, 댓글 작성일을 조회하는 SQL문을 작성해주세요. 결과는 댓글 작성일을 기준으로 오름차순 정렬해주시고, 댓글 작성일이 같다면 게시글 제목을 기준으로 오름차순 정렬해주세요. sql 문제를 풀 때는 원하는 결과값이 어떤 것인지?에 대해 먼저 파악해야 한다. 그리고 이 결과를 도출하기 위한 세부적인 연산에 대해 고민한다. 먼저, BOARD 테이블은 게시글에 대한 정보를 담고 있고, REPLY 테이블은 그 게시물의 첨부파일 정보를 담고 있다.(쉽게 생각해서 댓글이다. REPLY 테이블의 필드값을 통해 유추할 수 있다.) 이러한 정보를 보..
[SQL] JOIN
·
DB/SQL
개요데이터베이스를 관리할 때는 데이터베이스 품질 보장을 위해 정규화(관계형 스키마를 세분화하는 것)를 한다.이렇게 세분화된 테이블들은 연결되어 사용해야 하는 경우가 있다. 예를 들어, 학생 정보 테이블과 학과 정보 테이블이 정규화에 의해 분리되었고 학생의 학과 정보를 위해 두 테이블을 연결하여 정보를 얻는다.이러한 연결을 위한 연산이 JOIN이다. JOIN 종류  카티션 곱(Cartesian Product): 모든 행에 대한 조인(합집합)동등 조인(equi join): 공통 속성을 기준으로 같은 값을 가지는 행 조회(교집합)비동등 조인(non-equi join): 공통 속성을 기준으로 >, =, 외부 조인(outer join): 조인 조건이 만족하지 않는 경우, 모두 조회 LEFT/RIGHT로 나뉜다. ..
[프로그래머스] 조건에 맞는 도서 리스트 출력하기 | DATE
·
PS/BOJ&Programmers
DATESQL의 DATE 타입은 YYYY-MM-DD hh:mm:ss 형식이다.select 문에서 DATE(datetype_record) 이렇게 사용하면 YYYY-MM-DD 부분만 추출한다.DATE_FORMAT으로 기본값인 YYYY-MM-DD hh:mm:ss를 변경할 수 있다. DATE Format2024-02-01 18:31:45 날짜 및 요일포맷 형식결과값%Y2000%y00%MFebruary%bFeb%m02%d01%e1%aThu 시간포맷 형식결과값%H18(24시간)%h6(12시간)%i31(분)%s / %S45(초)%m02  해당 문제는 시간을 제외하고 날짜를 'yyyy-mm-dd' 데이터를 출력해야 하므로, SQL문은 다음과 같다. date_format(published_date, '%Y-%m-%d')..
[DB] TRUNCATE, DELETE | RDBMS 삭제 명령어 비교
·
DB/SQL
개요로컬에 더미로 쌓아둔 데이터가 너무 많고 난잡해서 database 값들을 초기화했는데.. 여기서 문제가 생겼다.  현재 Table 구조는 상당히 복잡하게 연관관계가 매핑되어있다.예를 들어, 유저가 회원가입을 하면 account 테이블이 생성되고, 이와 관련하여 account_a, account_b, account_c… 이런식으로 관계가 정의되어 있기에 update나 insert, delete 등의 명령어는 주의해서 사용해야 한다. 나처럼 무심코 정리했다간 에러지옥에 파묻힐것이다ㅠ.ㅠ 실서버나 staging과 같은 테스트 서버에 데이터를 쉽게/자주 조작하면 안되겠지만,local은 테스트를 위해 이런저런 작업을 하게된다.이때 무심코 delete를 하기보다는… truncate라는 명령어를 사용하는 것이 테..
[DB/MySQL] 기본 명령어3 | ORDER BY, GROUP BY, DISTINCT, LIMIT
·
DB
ORDER BY파이썬 sort / sorted와 똑같음.오름차순이 default이고 내림 차순으로 하려면 뒤에 DESC(Descending)을 붙여주면 된다.SELECT *FROM cityORDER BY Population;SELECT *FROM cityORDER BY CountryCode ASC, Population DESC;# USA의 인구수 오름차순 출력SELECT *FROM cityWHERE CountryCode = 'USA'ORDER BY Population;GROUP BY말 그대로 그룹으로 묶어줌.집계함수(Aggregation : AVG, MIN, MAX, COUNT, STDEV(표준편차), VARIANCE(분산))과 함께 사용 CountryCode 별로 인구수의 평균 볼건데,, Country..
[DB/MySQL] 기본 명령어2 | BEETWEEN, IN, LIKE, ALY, ALL
·
DB
BETWEEN 숫자로 구성된 연속적인 데이터 BETWEEN, ANDSELECT *FROM cityWHERE Population 7000000 AND 8000000IN()이산값 조건SELECT *FROM cityWHERE Name IN('Seoul', 'Pusan')LIKE문자열의 내용 검색 (%랑 _ 사용)KOR 기억안남.. KO 뒤에 한 글자 머였더라..? 할 때 SELECT *FROM cityWHERE CountryCode LIKE 'KO_'Tel로 시작하는 .. 도시 뭐더라..? 할 때SELECT *FROM cityWHERE Name LIKE 'tel %' ANY / SOME서브 쿼리의 여러가지 조건 중 하나만 만족해도 출력SELECT *FROM cityWHERE Population > ANY # ..
sebinChu
'sql' 태그의 글 목록