- 백트래킹
- DB
- stack
- 쟝고
- Article & User
- 트리
- outer join
- ORM
- Queue
- 뷰
- 이진트리
- Vue
- regexp
- N:1
- 스택
- count
- 통계학
- drf
- distinct
- create
- delete
- M:N
- migrations
- update
- 그리디
- Django
- SQL
- 완전검색
- Tree
- 큐
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
목록분류 전체보기 (301)
데이터 분석 기술 블로그
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bhrqlW/btsJUPgSywy/Fgx2xNVKgBrau0miG5dR2k/img.png)
SolutionSELECT SUBSTR(MIN(order_purchase_timestamp), 1, 10) AS first_order_date, SUBSTR(MAX(order_purchase_timestamp), 1, 10) AS last_order_dateFROM olist_orders_dataset
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/ozRnm/btsJVJ1aLLq/in00ka6awATmLlQKXQhHo1/img.png)
SolutionSELECT CAR_ID, CAR_TYPE, DAILY_FEE, OPTIONSFROM CAR_RENTAL_COMPANY_CARWHERE OPTIONS LIKE '%네비게이션%'ORDER BY CAR_ID DESC;
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bMX3R8/btsJUPOPpJm/X428WRn4h0fU9cPHx8efwk/img.png)
SolutionSELECT W1.idFROM Weather W1JOIN Weather W2ON DATEDIFF(W1.recordDate, W2.recordDate) = 1WHERE W1.temperature - W2.temperature > 0; 하나의 테이블을 JOIN을 할 수 있다는 것을 몰랐다. 이름을 두 가지를 다르게 지정하고 JOIN을 하면 된다. DATEDIFF는 두 날짜 간의 차이를 계산할 때 사용하는 함수다. 이 함수는 두 날짜 사이의 일수 차이를 반환한다. 두 날짜를 비교하여 날짜 차이(일수)를 반환합니다.반환되는 값은 정수로, 첫 번째 날짜가 두 번째 날짜보다 앞서면 양수를, 반대로 뒤에 있으면 음수를 반환합니다.주로 날짜 간의 간격을 계산하거나, 특정 날짜의 이전 또는 이후의 날짜를..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bdizbL/btsJVrzzS3b/Y0QGRAwObeido5cu1bEzik/img.png)
SolutionSELECT COUNT(CITY) - COUNT(DISTINCT(CITY))FROM STATIONWHERE LAT_N > 0AND LONG_W > 0;
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/2VWiV/btsJUOnfGTC/Hqobl2HPuhMnBAvwFpnFbK/img.png)
SolutionSELECT day, sum(tip) AS tip_dailyFROM tipsGROUP BY dayORDER BY tip_daily descLIMIT 1;
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/ckbS6q/btsJS6ioq38/hmFVgjysuVwZcihFNXipV0/img.png)
SolutionSELECT B.TITLE, B.BOARD_ID, R.REPLY_ID, R.WRITER_ID, R.CONTENTS, DATE_FORMAT(R.CREATED_DATE, '%Y-%m-%d') AS CREATED_DATEFROM USED_GOODS_BOARD BINNER JOIN USED_GOODS_REPLY RON B.BOARD_ID = R.BOARD_IDWHERE SUBSTR(B.CREATED_DATE, 1, 7) = '2022-10'ORDER BY R.CREATED_DATE ASC, B.TITLE ASC; 제일 오래 걸렸던 문제다. 처음에는 DATE_FORMAT 대신 SUBSTR(R. DATE_FORMATE, 1, 7)을 사용했다. CREATED..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bgqXFq/btsJSd2m6N5/lCTO9D5ydvU9OgsKGyflcK/img.png)
SolutionSELECT Visits.customer_id, COUNT(*) AS count_no_transFROM VisitsLEFT JOIN TransactionsON Visits.visit_id = Transactions.visit_idWHERE Transactions.transaction_id IS NULLGROUP BY Visits.customer_id; 처음 생각은 이랬다. 먼저 Visits 테이블과 Transaction 테이블을 매핑해서 Visits에서 transaction_id가 null인 값을 COUNT 하자. 그러면 Visits가 메인이고 거기에 Transactions에 있는 데이터가 매핑되어야 하므로 LEFT JOIN을 사용하고 visit_id로 매핑하면 된다고 생각했다. 그리고 맨..