Erhalten Sie einen festen Wert für eine Auswahl

13

Ich muss eine SELECTAbfrage durchführen, bei der ich den Wert des Feldes "Geld" erhalte. Das Feld existiert tatsächlich nicht in der Datenbank. Ich brauche nur die Abfrage, um dieses Feld mit einem festen Wert zurückzugeben. in diesem Fall ein Wert in USD.

Wie gebe ich einen konstanten Wert in einer SELECTAnweisung zurück?

fedejp
quelle
Siehe auch
trejder

Antworten:

21

Wenn der Wert immer gleich ist, können Sie Folgendes tun:

SELECT 'USD' AS `MONEY`, a.*
  FROM INFORMATION_SCHEMA.SCHEMATA AS a

Ersetzen Sie einfach ein. * Durch die Spalten, die Sie zurückgeben möchten, und INFORMATION_SCHEMA.SCHEMATA durch das Schema und die Tabellen, die Sie abfragen möchten.

Ich hoffe das ist hilfreich für dich.

Herr Brownstone
quelle
Danke vielmals. Klappt wunderbar. Nur neugierig. Wofür ist das letzte 'AS a' (nach 'FROM INFORMATION_SCHEMA.SCHEMATA')?
Fedejp
Überhaupt kein Problem. Das AS gibt einen Alias ​​für die Tabelle an. Es handelt sich im Wesentlichen um einen Kurznamen, mit dem Sie auf die Tabelle verweisen können.
Mr. Brownstone
Oh toll. Ich wusste nicht, dass Sie Aliase für Tabellen verwenden können. Danke vielmals!
Fedejp
0

@fedejp Sie müssen das 'AS' nicht einfügen. Sie können einfach 'INFORMATION_SCHEMA.SCHEMATA a' schreiben, da das 'AS' verstanden wird.

Und wenn die Abfrage nur eine Tabelle enthält (keine Verknüpfungen), müssen Sie keinen Alias ​​verwenden, und keines der angegebenen Felder benötigt 'a'. vor dem Feldnamen, da nicht zu verwechseln ist, aus welcher Tabelle alle Felder stammen.

So können Sie einfach schreiben:

SELECT 'USD' AS `MONEY`, * FROM INFORMATION_SCHEMA.SCHEMATA;
GAG und Spice
quelle
Wenn Sie auch nur eine Tabelle als Alias ​​verwenden, können Sie auch nur 'a' eingeben. in der Auswahlliste (bei Alias ​​'a') und Anzeigen aller Tabellenspalten in einer Dropdown-Liste. Ich denke, man kann mit Sicherheit sagen, dass so gut wie jeder SQL-Entwickler mit Berufserfahrung immer einen Alias ​​für seine Tabellen hat - auch wenn nur einer ausgewählt ist. Der einzige Ort, an dem ich keine Aliase verwende, ist, wenn ich einer Spalte einen Unterabfrageergebniswert gebe. Dann würde ich die Tabelle in der Hauptauswahl aliasen, aber nicht die in der Unterabfrage, damit Sie schnell zwischen den Feldern der Unterabfrage und den Feldern der Hauptabfrage unterscheiden können.
Mashchax