Ich möchte eine gespeicherte Prozedur mit Parametern erstellen, die angeben, welche Felder ausgewählt werden sollten.SQL-Bedingung SELECT
z. Ich möchte zwei Parameter "selectField1" und "selectField2" jeweils als bools übergeben.
Dann möchte ich so etwas wie
SELECT
if (selectField1 = true) Field1 ELSE do not select Field1
if (selectField2 = true) Field2 ELSE do not select Field2
FROM Table
Dank Karl
Was ich tun möchte, ist eigentlich viel komplexer als nur die Auswahl von 1 oder zwei Felder. Ich habe eine Reihe von Feld, das ich dynamisch in der Lage sein müssen, wählen, sowie eine WHERE auf bestimmte Felder zu tun, zum Beispiel: @ whereField1 = 1 @ whereField2 = 1 @ whereField3 = 0 usw. und dann eine WHERE auf Feld1 nur wenn @ whereField1 = 1 usw. Es scheint mir, als ob Ihr zweites Beispiel die einzige Möglichkeit wäre, dies wirklich zu tun. Wie viele Zeichen ist Varchar (MAX) obwohl? – Karl
SQL 2005 kann bis zu 8000 Zeichen speichern. –
@ Justin varchar (max) in SQL2005 ist nicht auf 8000 Zeichen beschränkt. varchar (max) wurde in SQL 2005 als eine Art Ersetzung von Textdatentypen mit der Unterstützung von Funktionen eingeführt, die für varchar verfügbar sind. – kristof