So wählen Sie eine Spalte ohne Namen, die in sql server?
wie
select name,family from student where name="X"
ohne den Spaltennamen.
Beispiel :
select "column1","column2" from student where "column1"="x"
oder zum Beispiel
select "1","2" from student where "1"="x"
"1" column1
"2" ist column2
ich will nicht sagen, dass Spalten-Namen. ich möchte sagen, nur seiner Nummer oder andere....
idont müde von select *. aber es ist nur für, ich weiß nicht, die Spalten-Namen, aber ich weiß, wo Sie sind. meine Spalten-name ändern jeder will ich die Datei zu Lesen, aber seine Daten sind die gleichen, und die Daten sind die gleichen Spalten, die in jeder Datei.
- Haben Sie versucht
SELECT *
? - Das ist schrecklich Beratung.
SELECT *
ist eine schlechte Praxis. - Warum wollen Sie verwenden Ordnungszahlen statt der Spaltennamen? Es bedeutet, dass, wenn die Reihenfolge der Spalten/Anzahl änderungen (was passieren kann), wird die Abfrage nicht mehr kommen, was Sie denken, es tut.
- ich habe über kommen mal, wenn ich wollen würde, dies zu tun als gut. im Allgemeinen ist es, wenn ich Zugriff auf Daten aus einer Datei oder anderen Quelle, die nicht immer konsistent/vorhersagbar. Könnte jemand ändern Sie die column-header in eine Datei und nun ist die Abfrage ist gebrochen.
- Dies ist eine große Frage; auch wenn dieser wahrscheinlich nie eine gute Antwort zu haben. Dennoch lohnt sich die Abstimmung bis.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Obwohl Sie nicht verwenden können, Feldstellungen Planern in der SELECT-Anweisung der SQL-standard enthält die INFORMATION_SCHEMA, wo das Wörterbuch der Tabellen definiert. Diese enthält die SPALTEN-Ansicht, wo alle Felder aller Tabellen definiert sind. Und in dieser Ansicht gibt es ein Feld namens ORDINAL_POSITION, die Sie verwenden können, zu helfen bei diesem problem.
Wenn Sie die Abfrage
dann erhalten Sie die Spalte, die Namen für die Positionen, die Sie wollen. Von dort aus bereiten Sie eine SQL-Anweisung.
Könnten Sie temp-Tabelle wie folgt:
Dann verwenden Sie es:
Nein, Sie können nicht verwenden Sie die Ordnungszahl (numerisch) die position in der SELECT-Klausel. Nur, Um durch Sie können.
jedoch können Sie Ihre eigenen Spalte alias...
Können Sie den alias zu verwenden:
Es ist einfach nicht möglich. Leider hat Sie nicht denken Tabellenwert-Funktionen, für die information_schema ist nicht verfügbar, also auf gut Glück mit, dass.
Wenn es ein string ist, können Sie dies tun :
Wenn es eine Zahl, die Sie dies tun können :
Wenn es ein datetime-Sie können dies tun :
Ebenso für andere Datentypen..