最初のケースでは問題ありません。それは存在クエリであるため、実際には2つまたは何かを選択することができます。一般に、定数を選択することは、存在クエリ以外のもの(結果セットの列に定数をドロップする)にも使用できますが、存在クエリは定数に遭遇する可能性が最も高い場所です。表与え例えば
は、3つの列、id
、firstname
、lastname
、およびbirthdate
を含むperson
と呼ばれる、あなたはこのようなクエリを記述することができます。
select firstname, 'YAY'
from person
where month(birthdate) = 6;
、これは
のようなものを返します
name 'YAY'
---------------
Ani YAY
Sipho YAY
Hiro YAY
有用ではありませんが、可能です。考えられるのは、select文での式を選択するということです。これは列名だけでなく、定数や関数呼び出しでも可能です。可能性が高い場合には、次のとおりです。
select lastname||','||firstname, year(birthday)
from person;
ここ||
は、文字列連結演算子であり、そしてyear
は私が作っ機能です。
存在クエリに1
が表示されることがある理由はこれです。名前が「H」で始まった人がいるかどうかを知りたがっているとしますが、あなたはこの人が誰であったかは気にしませんでした。あなたは
select id
from person
where lastname like 'H%';
を言うことができるが、我々はIDを必要としないので、あなたが気にすべてはあなたが空でない結果が設定され得るかどうかかではないので、あなたも
select 1
from person
where lastname like 'H%';
を言うことができます。
2番目の場合、1は列番号です。結果が最初の列の値でソートされることを意味します。それを2に変更すると、2番目の列が順番になります。
ところで、定数が選択される別の場所は、NOSQLのようなシステムで処理される非常に非正規化されたCSVファイルにリレーショナルデータベースからダンプするときです。
試しましたか?パターンに気付いたことがありますか? –