SQL-select-Abfrage mit ein oder zwei Spalten ausgeschlossen
schreiben wie man eine select-Abfrage mit ein oder zwei Spalten ausgeschlossen, anstatt der Liste unten benötigte Spalten.
zum Beispiel haben wir eine Tabelle "Tabelle1" mit 10 Spalten (col_1,col_2,col_2 ..... col_10)
und wir möchten, wählen Sie col_1 zu col_8.
statt zu schreiben wie
Select col_1, col_2, col_3 .... col_8 from Table1
sollten wir wählen, wie dies
Select -(col_9, col_10) * from Table1
- Nein, es gibt keine standard-Weg, dies zu tun.
- da Sie noch nicht benannt, einem dbms, ich denke, du bist zu Fragen für sql-standard. die Antwort ist: nicht möglich
- Sie kann das tun, es ist immer besser zu schweigen, welche Spalten benötigt werden, anstatt die nicht benötigt werden
- Könnten Sie versuchen, diese Lösung: stackoverflow.com/a/6691661/835239 ?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Diese ist möglich, aber Sie würden für die Verwendung dynamischer SQL oder eine gespeicherte Prozedur. Es würde immer noch bedeuten, dass geben Sie die start-und Ende-Spalte mit fester Spalte-Namen und Indizes und wenn die Spalten nicht in der running order (colN, colN+1, etc.) dann wäre es chaotisch.
Also ich nehme an, deine Antwort, nur geben Sie es aus. Die Vorteile, die Sie gewinnen, tun Sie etwas cleaver ist klein.
Ich hoffe, das hilft.
Irgendwelche Ideen?
Ich denke, wir können wählen Sie die Spalte name zuerst, dann schreiben Sie in die Abfrage.
1 Wählen Sie die Spalte mit ausgeschlossen.
2 Verwenden Sie Dann die Spalte Ergebnis wir haben von oben-Abfrage zu schreiben, wählen Sie Abfrage-Spalte.
aber ich glaube nicht, dass es nur einmal die Abfrage für diesen Fall. Sie müssen die Abfrage zweimal, mindestens.