Frage : SQL im Subquery gegen eine andere Methode, angekettet wo

Hallo,

SQL BEDIENER 2008

I morgens welche Weise wundernd zu gehen. Ich muss auf einem gegebenen Satz Ids filtern. (über .net-Code).

SELECT * VON DER TABELLE WO ParentID INNEN (1, 2, 3, 4, 5, 6, 7, 8, 9 10)

or, ist zu schreiben besser, wie this

SELECT VON DER TABELLE, IN DER ParentID = 1 ODER ParentID = 2 ODER ParentID = 3 ODER ParentID = 4 ODER ParentID = 5 ODER ParentID = 6 ODER ParentID = 71 ODER ParentID = 8 ODER ParentID = 9 ODER ParentID = 10

or dort ein besseres verbinden ist?

The sql verwendet parameters.

Given, das die IDs, die bereitgestellt, dynamisch sind und von 1 reichen können - n und berechnet 4.

Also, dieses ParentID ist ein fremder Schlüssel, könnte da viele zusammenpassend irgendwelche der gegebenen Zahlen dort sein. Z.B. 1 gegeben, konnte es 10 zurückgebrachte Aufzeichnungen geben. Aber wieder, ist es unbekannt, wieviele Aufzeichnungen dort sind. Ich werde placeindexes wie erforderlich.

thanks

Antwort : SQL im Subquery gegen eine andere Methode, angekettet wo

SQL-Server erweitert in der Klausel in ODER in den Bestandteilen (funktionell Äquivalent).
Ihn zu schreiben heraus manuell ist einfach geisteskrank für sagen 25 Einzelteile…
Using ORs ist auch gegen Störungen empfindlilch, wenn Sie anfangen, es mit äußerem Zustand zu mischen wie UND wenn Sie nicht richtig einklammern.
Weitere Lösungen  
 
programming4us programming4us