sqlserver 테이블에있는 순 고객의 수를 가져 오는 일에 열중하고 있습니다. 데이터 저장 방법은 다음과 같습니다.덤프 데이터를 가져 오는 SQL
+----------+----------+----------+
| Value | Label | ClientID |
+----------+----------+----------+
| Mr | Title | 1 |
| Sul | Forename | 1 |
| Last | Surname | 1 |
| WD17 6JJ | Postcode | 1 |
+----------+----------+----------+
이제 forename, 성, 우편 번호를 기준으로 고유 고객을 나열해야합니다.
SELECT DISTINCT
id.clientID,
title.title,
Forename.Forename,
Surname.Surname,
Postcode.Postcode
FROM table id
CROSS APPLY (SELECT value AS title FROM table title WHERE label = 'title' AND title.clientID = id.clientID) title
CROSS APPLY (SELECT value AS Forename FROM table Forename WHERE label = 'Forename' AND Forename.clientID = id.clientID) Forename
CROSS APPLY (SELECT value AS Surname FROM table Surname WHERE label = 'Surname' AND Surname.clientID = id.clientID) Surname
CROSS APPLY (SELECT value AS Postcode FROM table Postcode WHERE label = 'Postcode' AND Postcode.clientID = id.clientID) Postcode
: 누군가가 당신이 뭔가를 할 수있는 별개의 고객
SELECT COUNT (DISTINCT ClientId)
FROM dbo.table
의 카운트
예상 결과를하시기 바랍니다, 그리고 그 디자인은 무엇인가? – Sami
고유 고객 수 또는 해당 고객 목록을 알고 싶습니다. 위의 결과 집합은 정보가 데이터베이스 테이블 (하나의 테이블)에 저장된 방법을 알려주는 것입니다 –
어떤 성이 어느 forename에 속하는지 어떻게 알 수 있습니까? 고객 데이터 간의 링크는 무엇입니까? – VDK