Je voudrais identifier les occurrences où il y a plus d'une valeur distincte d'une combinaison de colonnes E, F dans un groupement A, B, C, D.Distinct E, F dans un regroupement A, B, C, D?
Par exemple, étant donné les données suivantes:
SELECT * FROM MyTable
A B C D E F
---------- ---------- ---------- ---------- ---------- ----------
1 1 1 1 A B
1 1 1 1 A B
1 1 1 2 A C
1 1 1 2 A D
Je veux retourner
A B C D
---------- ---------- ---------- ----------
1 1 1 2
..car il ar plusieurs distincts (E, F) des combinaisons dans ce (A, B, C, D) groupement).
Voici le SQL pour créer votre cas de test!
CREATE TABLE [dbo].[MyTable](
[A] [nchar](10) NULL,
[B] [nchar](10) NULL,
[C] [nchar](10) NULL,
[D] [nchar](10) NULL,
[E] [nchar](10) NULL,
[F] [nchar](10) NULL
) ON [PRIMARY]
GO
INSERT INTO [dbo].[MyTable]([A], [B], [C], [D], [E], [F])
SELECT N'1 ', N'1 ', N'1 ', N'1 ', N'A ', N'B ' UNION ALL
SELECT N'1 ', N'1 ', N'1 ', N'1 ', N'A ', N'B ' UNION ALL
SELECT N'1 ', N'1 ', N'1 ', N'2 ', N'A ', N'C ' UNION ALL
SELECT N'1 ', N'1 ', N'1 ', N'2 ', N'A ', N'D '
Désolé: Êtes-vous sûr? Les résultats ne semblent pas corrects. – ChadD
@Velika: J'ai écrit ceci 30 minutes avant vos données d'échantillon. Je devinais essentiellement. Mais je vois mon erreur maintenant – gbn
Je pense que nos deux réponses sont toujours fausses. Ils retournent tous deux 2 rangées au lieu d'1 rangée. J'ai ajouté les informations supplémentaires pour aider les gens à m'aider :-) – ChadD