[SQL] DISTINCT와 선택 COUNT (*) - SQL 서버 쿼리
SQLDISTINCT와 선택 COUNT (*) - SQL 서버 쿼리
SQL Server 2005에서는 나는 테이블 cm_production을 나열하는 생산에 투입되어있어 모든 코드. 테이블은 다른 컬럼과 함께 ticket_number, program_type 및 program_name은 및 push_number 있습니다.
목표 : 프로그램 유형 및 푸시 번호로 모든 DISTINCT 프로그램 이름을 카운트
내가 지금까지 가지고하는 것입니다 :
DECLARE @push_number INT;
SET @push_number = [HERE_ADD_NUMBER];
SELECT DISTINCT COUNT(*) AS Count, program_type AS [Type]
FROM cm_production
WHERE push_number=@push_number
GROUP BY program_type
이 날이 도중에 얻을 수 있지만, 모든 프로그램 이름,하지 (내가 그 쿼리 할 기대하지 않습니다) 별개의 사람을 세고. 난 그냥 그들을 선택하지 않고 단지 별개의 프로그램 이름을 계산하도록 지시하는 방법 주위에 내 머리를 정리 할 수없는 것 같아요. 또는 뭔가.
해결법
-
==============================
1.
SELECT COUNT(DISTINCT program_name) AS Count, program_type AS [Type] FROM cm_production WHERE push_number=@push_number GROUP BY program_type
DISTINCT COUNT (*)는 각각의 고유 한 카운트 행을 반환합니다. 당신이 원하는 것은 COUNT입니다 (DISTINCT <식>) : 그룹 및 반환에 각 행에 대한 식을 계산 고유 null이 아닌 값의 수.
-
==============================
2.나는 각각의 고유 한 값의 발생 횟수를 얻을 필요가 있었다. 열은 지역 정보가 포함되어 있습니다. 내가 함께 결국 간단한 SQL 쿼리는 :
나는 각각의 고유 한 값의 발생 횟수를 얻을 필요가 있었다. 열은 지역 정보가 포함되어 있습니다. 내가 함께 결국 간단한 SQL 쿼리는 :
SELECT Region, count(*) FROM item WHERE Region is not null GROUP BY Region
어느 날 말, 같은 목록을 제공합니다 :
Region, count Denmark, 4 Sweden, 1 USA, 10
-
==============================
3.당신은 별개의 열에 대한 파생 테이블을 만들고 그 테이블에서 카운트를 조회 할 수있다 :
당신은 별개의 열에 대한 파생 테이블을 만들고 그 테이블에서 카운트를 조회 할 수있다 :
SELECT COUNT(*) FROM (SELECT DISTINCT column1,column2 FROM tablename WHERE condition ) as dt
여기서 DT 파생 테이블이다.
-
==============================
4.
SELECT COUNT(DISTINCT program_name) AS Count, program_type AS [Type] FROM cm_production WHERE push_number=@push_number GROUP BY program_type
-
==============================
5.이 시도:
이 시도:
SELECT COUNT(program_name) AS [Count],program_type AS [Type] FROM (SELECT DISTINCT program_name,program_type FROM cm_production WHERE push_number=@push_number ) dt GROUP BY program_type
-
==============================
6.이것은 당신이 주소 필드의 마지막에 저장 PIN 코드의 수를 얻으려면 좋은 예입니다
이것은 당신이 주소 필드의 마지막에 저장 PIN 코드의 수를 얻으려면 좋은 예입니다
SELECT DISTINCT RIGHT (address, 6), count(*) AS count FROM datafile WHERE address IS NOT NULL GROUP BY RIGHT (address, 6)
-
==============================
7.
select count (distinct NumTar),'PROPIAS' from ATM_TRANe with (nolock) where Fecha>='2014-01-01' AND Fecha<='2015-05-31'and NetDestino=0 and SystemCodResp=0 group by NetDestino union select sum (contar),'FORANEAS' from ( select count(distinct NumTar) as contar from ATM_TRANe with (nolock) where Fecha>='2014-01-01' AND Fecha<='2014-01-31' and NetDestino!=0 and SystemCodResp=0 group by NetDestino )dt
from https://stackoverflow.com/questions/1521605/sql-server-query-selecting-count-with-distinct by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] 정렬 MySQL의 오류의 불법 혼합 (0) | 2020.03.26 |
---|---|
[SQL] 오류 1046 없음 데이터베이스 선정, 어떻게 해결합니까? (0) | 2020.03.26 |
[SQL] 인라인 테이블 값 함수 대 다중 문 테이블 반환 함수 (0) | 2020.03.26 |
[SQL] GROUP BY 절에 나타나야합니다 또는 집계 함수에 사용 (0) | 2020.03.26 |
[SQL] 이 SQL Server 데이터베이스 (스키마 및 데이터)를 비교하는 가장 좋은 도구는 무엇입니까? [복제] (0) | 2020.03.26 |