having4 *매우중요 oracle developer 문제풀이8. GROUP BY, HAVING, WHERE # SQL GROUP BY 문제 문제1. 도시 목록에서 지역별 인구수를 구하라. SELECT SUM(popu) AS 인구수, region AS 지역명 FROM tcity GROUP BY region ORDER BY 인구수 DESC; 문제2. 각 지역에서 가장 넓은 면적을 구하되 단 인구가 50만 이상인 도시만 대상으로 한다 # 내코드 SELECT name AS 도시이름, region AS 지역, area AS 면적, popu AS 인구수 FROM tcity WHERE popu >= 50 GROUP BY region; 실패 # 답안코드 SELECT region, MAX(area) FROM tcity WHERE popu > 50 GROUP BY region; 음... 내가 너무 복잡하게 생각했나보다. 한편으.. 2022. 9. 9. *매우중요 oracle developer 기초3. GROUP BY, WHERE, HAVING의 효율적 코드 # GROUP BY 예시1 SELECT '영업부', AVG(salary) FROM tstaff WHERE depart = '영업부'; 우선 이것은 그룹핑이 된 쿼리는 아니다. 하지만 단순히 출력의 대상이 1개로 집약되는 이와 같은 쿼리는 또 출력이 가능하다는게 신기하다. 예시2 SELECT depart AS 부서명, ROUND(AVG(salary),2) AS 월급평균 FROM tstaff GROUP BY depart; 이전에 2개 이상을 SELECT 해서 노출하고 싶었던 기능 그대로다. 예시3 SELECT depart, COUNT(*), MAX(joindate), ROUND(AVG(score),2) FROM tstaff GROUP BY depart; 예시3에는 SELECT로 무더기로 4개의 값을 선택하였.. 2022. 9. 9. SQL 기초 22 HAVING (GROUP BY와 셋트메뉴라고 보면 된다) HAVING #문제1 conditions we are launching a platinum service for our most loyal customers. We will assign platinum status to customers that have had 40 or more transaction payments. question what customer ids are eligible for platinum status? answer SELECT customer_id, COUNT(*) FROM payment GROUP BY customer_id HAVING COUNT(*) >= 40 ….. 지금 쿼리실행하고 3분째 기다리고 있는데도 답이 안나온다 진심으로 이걸 어떻게 쓰는거지? 이건 단단히 뭔가에 .. 2022. 8. 25. SQL 기초 12 집계함수 group by, having # 집계함수 ## groupby 행을 그룹으로 묶어서 그룹별로 집계 처리 하기가 가능하다. 예시 USE database; SELECT name, MAX (score) AS high, MIN (score) AS low FROM table GROUP BY name; 출력값으로는 name high low 이렇게 되어서 필드값이 나열된다. #2 HAVING SELECT 에서 조건을 사용할때는 WHERE를 쓰지만 GROUP BY 에서 조건을 사용할 때는 HAVING을 사용한다. * GROUP BY 에서는 WHERE 절 사용이 불가능 하다. 예시 1 SELECT price, COUNT (title) FROM table GROUP BY price HAVING COUNT(title) = 1; 결과물로는 price CO.. 2022. 8. 23. 이전 1 다음