[SQL] 나는 T-SQL 그룹으로 어떻게 사용합니까
SQL나는 T-SQL 그룹으로 어떻게 사용합니까
나는 수, 합계, 평균 등과 같은 모든 집계 함수를 사용하는 SQL 쿼리의 말에 GROUP BY 절 (나는 이유를 모르겠지만) 나는이 필요합니다 알고 :
SELECT count(userID), userName
FROM users
GROUP BY userName
때 다른 GROUP BY 유용하고 성능 파급 효과는 무엇인가 것인가?
해결법
-
==============================
1.5 명 이상의 위젯이있는 각 위젯 카테고리에서 위젯의 수를 검색하려면, 당신이 할 수 있습니다 :
5 명 이상의 위젯이있는 각 위젯 카테고리에서 위젯의 수를 검색하려면, 당신이 할 수 있습니다 :
SELECT WidgetCategory, count(*) FROM Widgets GROUP BY WidgetCategory HAVING count(*) > 5
은 "가진"절은 어떤 사람들이 종종 약 대신 클라이언트에 모든 데이터를 검색 할 탈퇴하고 거기를 반복 잊지이다.
-
==============================
2.GROUP BY 하나에 그것이 그룹의 여러 레코드에서 DISTINCT와 유사하다.
GROUP BY 하나에 그것이 그룹의 여러 레코드에서 DISTINCT와 유사하다.
http://www.devguru.com/technologies/t-sql/7080.asp에서 빌린이 예는, 제품 테이블에서 서로 다른 제품을 나열합니다.
SELECT Product FROM Products GROUP BY Product Product ------------- Desktop Laptop Mouse Network Card Hard Drive Software Book Accessory
DISTINCT 이상 GROUP BY의 장점은 HAVING 절과 함께 사용하는 경우 그것은 당신에게 세분화 된 제어를 제공 할 수 있다는 것입니다.
SELECT Product, count(Product) as ProdCnt FROM Products GROUP BY Product HAVING count(Product) > 2 Product ProdCnt -------------------- Desktop 10 Laptop 5 Mouse 3 Network Card 9 Software 6
-
==============================
3.그룹으로는 레코드가 반환되기 전에 (이 암시 종류이기 때문에) 전체 세트가 채워 강제로.
그룹으로는 레코드가 반환되기 전에 (이 암시 종류이기 때문에) 전체 세트가 채워 강제로.
그 이유 (및 많은 다른 사람)의 경우, 하위 쿼리에서 그룹에 의해 사용하지 않습니다.
-
==============================
4.태그가 구글의 예를 수 있습니다 사용하는 횟수를 계산 :
태그가 구글의 예를 수 있습니다 사용하는 횟수를 계산 :
SELECT TagName, Count(*) AS TimesUsed FROM Tags GROUP BY TagName ORDER TimesUsed
당신은 단순히 태그의 고유 한 값을 원하는 경우에, 나는 DISTINCT 문을 사용하는 것을 선호합니다.
SELECT DISTINCT TagName FROM Tags ORDER BY TagName ASC
-
==============================
5.당신이 평균 또는 데이터의 무리를 요약하는 보고서를 생성 할 때 GROUP BY도 도움이됩니다. 당신은 할 수있는학과 ID와 SUM으로 GROUP 모든 판매 수익 또는 AVG 매달 판매의 수입니다.
당신이 평균 또는 데이터의 무리를 요약하는 보고서를 생성 할 때 GROUP BY도 도움이됩니다. 당신은 할 수있는학과 ID와 SUM으로 GROUP 모든 판매 수익 또는 AVG 매달 판매의 수입니다.
from https://stackoverflow.com/questions/2702/how-do-i-use-t-sql-group-by by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] MySQL의의에 SQL 서버 상당 EXPLAIN (0) | 2020.07.07 |
---|---|
[SQL] 한 셀의 값을 검색하기가 ExecuteReader () 메소드를 사용하는 방법 (0) | 2020.07.07 |
[SQL] 어떻게 SQL Server의 평등을위한 두 개의 열을 비교합니까? (0) | 2020.07.07 |
[SQL] 두 날짜 사이의 분 계산 시간 차이 (만 근무 시간) (0) | 2020.07.06 |
[SQL] ORA-01861 : 리터럴이 형식 문자열과 일치하지 않습니다 (0) | 2020.07.06 |