코드카타
SELECT CASE WHEN price >= 0 and price <10000 then 0
when price >= 10000 and price <20000 then 10000 when price >= 20000 and price <30000 then 20000 when price >= 30000 and price <40000 then 30000 when price >= 40000 and price <50000 then 40000 when price >= 50000 and price <60000 then 50000 when price >= 60000 and price <70000 then 60000 when price >= 70000 and price <80000 then 70000 when price >= 80000 and price <90000 then 80000 end price_group,count(*) products FROM product GROUP BY price_group ORDER BY price_group 내가 짠 쿼리....뭔가 이상하다고 생각해서 두가지 정도 다른 방법을 찾아봄 |
SELECT FLOOR(PRICE/10000)*10000 PRICE_GROUP,
COUNT(*) PRODUCTS FROM PRODUCT GROUP BY FLOOR(PRICE/10000)*10000 ORDER BY PRICE_GROUP |
SELECT 10000 * (PRICE DIV 10000) AS PRICE_GROUP, COUNT(*) AS PRODUCTS
FROM PRODUCT GROUP BY PRICE_GROUP ORDER BY PRICE_GROUP DIV는 나누기(/)와 같은 표시 왜 같은 값이 나오는지 정확하게 안 뜯어봤음< 프로젝트 끝나고 주말에 보기 |
SELECT user_id, nickname, total
FROM (SELECT user_id, nickname, sum(price) total FROM USED_GOODS_BOARD ugb INNER JOIN USED_GOODS_USER ugu on ugb.WRITER_ID=ugu.user_id #같은 데이터라도 각 테이블마다 컬럼명이 다를 수 있음 WHERE STATUS='done' GROUP BY user_id) a WHERE total>=700000 ORDER BY total 내가 쓴 쿼리.... 서브 쿼리를 쓰지 않은 방법이 있을 것 같아서 찾아봄 |
SELECT user_id, nickname, sum(price) total
FROM USED_GOODS_BOARD ugb INNER JOIN USED_GOODS_USER ugu on ugb.WRITER_ID=ugu.user_id WHERE status='done' GROUP BY user_id HAVING total>=700000 ORDER BY total #서브쿼리 안 쓰는 방법을 꼭 생각해보기.. 습관 들었어..ㅠㅠ |
질문 사항
SELECT animal_id, name, sex_upon_intake
FROM animal_ins WHERE name IN('lucy','ella','pickle','rogan','sabrina','mitty') #WHERE name REGEXP 'lucy|ella|pickle|rogan|sabrina|mitty' 왜 안 됨 ORDER BY animal_id |
with 문 WITH 임시테이블이름 AS (
서브쿼리 ) SELECT * FROM 임시테이블이름;
|
CASE WHEN HOUR (event_time) = '0' THEN 00
WHEN HOUR (event_time) = '1' THEN 01 WHEN HOUR (event_time) = '2' THEN 02 WHEN HOUR (event_time) = '3' THEN 03 WHEN HOUR (event_time) = '4' THEN 04 WHEN HOUR (event_time) = '5' THEN 05 WHEN HOUR (event_time) = '6' THEN 06 WHEN HOUR (event_time) = '7' THEN 07 WHEN HOUR (event_time) = '8' THEN 08 WHEN HOUR (event_time) = '9' THEN 09 WHEN HOUR (event_time) = '10' THEN 10 WHEN HOUR (event_time) = '11' THEN 11 WHEN HOUR (event_time) = '12' THEN 12 WHEN HOUR (event_time) = '13' THEN 13 WHEN HOUR (event_time) = '14' THEN 14 WHEN HOUR (event_time) = '15' THEN 15 WHEN HOUR (event_time) = '16' THEN 16 WHEN HOUR (event_time) = '17' THEN 17 WHEN HOUR (event_time) = '18' THEN 18 WHEN HOUR (event_time) = '19' THEN 19 WHEN HOUR (event_time) = '20' THEN 20 WHEN HOUR (event_time) = '21' THEN 21 WHEN HOUR (event_time) = '22' THEN 22 WHEN HOUR (event_time) = '23' THEN 23 END |
hour(event_time)
오른쪽의 하드 쿼리를 한번에 묶어주는 방법.. hour( time )은 date 데이터를 시 단위로 변환 위의 컬럼을 GROUP BY 해주면 시간 별로 그룹핑이 되면서!!!!!!!!! 왼쪽과 같은 결과 값이 나옴 나 뭐했냐 ㅋㅋ |
피봇 테이블
ROW(행) 데이터를 요약하기 위해 사용 어떤 컬럼을 피벗(중심)으로 할지 결정 =>목표를 확고하게 하는 것이 좋음 나머지 피봇 테이블에 대해서 자세히 공부하기 |
프로젝트 진행하며 튜터님과 상담한 내용 정리 데이터를 분석할 때 어떠한 현상을 보고 결과가 이렇네에서 멈추지 말고 왜 이런 형상이 나왔는지 좀 더 자세하게 파고들기 ( ex) 코로나 때 전체 매출이 떨어졌네 x 코로나 때 전체 매출이 떨어졌는데 왜 떨어졌을까. 화장품 가게라면 밖에 잘 나가지 않아서? 아니면 물건을 사려고 했지만 품질이였어서? 와 같은 문제 지표 도툴 |