選択時に固定値を取得する


13

SELECT「money」フィールドの値を取得するクエリを実行する必要があります。このフィールドは実際にはデータベースに存在しません。固定値でこのフィールドを返すクエリが必要です。この場合、USDの値。

SELECTステートメントで定数値を返すにはどうすればよいですか?


回答:


21

値が常に同じになる場合、次のようなことができます。

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

a。*を返す列に置き換え、INFORMATION_SCHEMA.SCHEMATAをクエリするスキーマとテーブルに置き換えるだけです。

これがあなたのお役に立てば幸いです。


どうもありがとう。魅力のように機能します。ちょっと興味があるんだけど。最後の「AS a」(「FROM INFORMATION_SCHEMA.SCHEMATA」の後)は何のためですか?
fedejp

全く問題なし。ASはテーブルのエイリアスを指定します。これは基本的に、テーブルを参照できる短い名前です。
Mr.Brownstone

それはいい。テーブルにエイリアスを使用できるとは思いませんでした。どうもありがとう!
fedejp

0

@fedejpでは、「AS」を挿入する必要はありません。「AS」が理解されているため、単に「INFORMATION_SCHEMA.SCHEMATA a」と書くことができます。

クエリにテーブルが1つしかない場合(結合がない場合)、エイリアスを使用する必要はなく、指定されたフィールドに「a」は必要ありません。すべてのフィールドがどのテーブルからのものであるかについて混乱がないため、フィールド名の前に。

だからあなたは簡単に書くことができます:

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

それでも、1つのテーブルでもエイリアスを作成すると、「a」と入力するオプションが提供されます。選択リスト(エイリアス 'a'の場合)で、ドロップダウンリストのすべてのテーブル列を確認します。私は、実務経験のあるほとんどすべてのSQL開発者が、1つだけが選択されている場合でも、常にテーブルをエイリアス化すると言っても安全だと思います。エイリアスを使用しない唯一の場所は、列にサブクエリの結果値を与えるときです。次に、メインセレクトのテーブルにエイリアスを作成しますが、サブクエリのテーブルにはエイリアスを作成しないため、サブクエリのフィールドとメインクエリのフィールドをすばやく区別できます。
Mashchax
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.