existiert nicht in derselben Tabelle

7

Ich möchte die Tests auswählen, die auf IE7 ausgeführt werden und nicht auf IE8 ausgeführt werden. Ich habe das versucht, aber ich bekomme 0 und das ist nicht wahr.

%Vor%

Danke!

    
Ronny 23.12.2010, 13:44
quelle

5 Antworten

7

Versuchen Sie es

%Vor%     
Suvabrata Roy 23.12.2010, 13:46
quelle
9

Sie meinen wahrscheinlich:

%Vor%

(Mein Transact-SQL ist ein wenig eingerostet, aber ich denke, so wird es gemacht. Wichtig ist, dass Sie sagten: "Ich möchte alle test_names mit Version 'ie7' und auch, dass keine Zeile in der Datenbank existiert überhaupt mit der Version 'ie8' ":))

    
Spiny Norman 23.12.2010 13:46
quelle
7

Dies ist eine optimale Form der korrekten Abfrage:

%Vor%

Sie sehen, ich habe eine Vergleichsüberprüfung für testname hinzugefügt, da Sie ohne sie alle Tests für ie7 nur dann erhalten, wenn es überhaupt keine ie8-Tests gibt.

Unterabfragen sind weniger effizient als linke Joins, und diese IS NULL-Bedingungsprüfung führt zu demselben Ergebnis und ermöglicht eine schnellere Verarbeitung mit einem guten Index.

    
Andy 23.12.2010 13:48
quelle
4

Sie verpassen eine Bedingung in der Unterabfrage, um Zeilen an die äußere SELECT-Datei anzupassen, z. B.:

%Vor%     
AdaTheDev 23.12.2010 13:47
quelle
0
%Vor%     
onedaywhen 23.12.2010 14:41
quelle

Tags und Links