Zählt Zeilen, die die gleichen Beziehungen haben

8

Ich habe drei Tische. Palette, Farbe und eine Beziehungstabelle palette_color. Genau wie dieses Beispiel:

Ссылка

Ich möchte die Paletten mit den exakt gleichen Farben in der Beziehungstabelle zählen. Ich mache es bereits, wie Sie im Beispiel sehen können. Aber ich glaube, dass meine Methode nicht effizient ist. Es dauert fast 2 Sekunden zu laufen.

Ich benutze SQL Server.

Hier zähle ich die Zeilen:

%Vor%

Und in der where-Klausel stelle ich sicher, dass nur die erste Palette auf dem Ergebnis erscheint

%Vor%     
rtmc 08.09.2015, 04:26
quelle

2 Antworten

4

Hier erstelle ich eine String-Liste aller color_id in einem palete_id mit FOR XML PATH

Dann gruppieren Sie nach und zählen Sie jede Gruppe von Farben.

SQL FIDDLE DEMO (12ms)

%Vor%     
Juan Carlos Oropeza 08.09.2015, 04:50
quelle
2

Sie können dies mit FOR XML PATH tun:

Abfrage 1 :

%Vor% Ergebnisse :

%Vor%

Als Bonus gibt diese Lösung Ihnen die tatsächlichen Farben in der Palette

    
cha 08.09.2015 04:53
quelle

Tags und Links