
ある人に、こんなSQLを教えてもらいました。
-----------------------------
select id,tid,NULL as "res_no",account_id,name,date
from t_game_bbs as a
union
select id,tid,res_no,account_id,name,date
from t_game_res as b where del_flg != 1';
order by date DESC limit 10;
--------------------------------
不思議に思ったのが、”NULL as "res_no"”のところです。
これについて、ググッて見たのですが、明確な説明が見つかりませんでした。
これって、SQLの隠し機能なのですか?
No.2
- 回答日時:
まず、SQL文でselect句にくるカラム名は「as 任意の名前」で別名をつけることができます。
ここで「NULL as "res_no"」と書いてある部分は
NULL(なにもない)を"res_no"という名前で取得する、という意味です。
また、このSQL文では、
2つのselect文の結果を「union」演算子で結合して、1つのまとまりにしています。
テーブルAからの検索結果
union(合わせる)
テーブルBからの検索結果
unionで結合する場合、
テーブルA、Bそれぞれから取得する項目数を合わせる必要があるのですが、
多分テーブルAには"res_no"というカラムが存在しないか、
もしくは取得するには不適切な値が入っているため、
数を合わせるためだけにNULL(なにもない状態)を取得するようにしているのだと思います。
参考URLはSELECT文についてです。
参考URL:http://cyberam.dip.jp/database/postgres/sql/sele …
”as "res_no"はわかるのですが、列名に”NULL”をダミーで指定できることをはじめて知りました。
本にも、Web上にも載っていないのです。
なので、私は、SQL職人の秘儀なのかと・・・。(・ω・;)
ありがとうございました。m(_。_)m
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
教えて!gooグレードポイントがdポイントに変わります!
dアカウント連携を行っていただくと、グレードに応じて「dポイント」が進呈されるようになります。
-
select文の実行結果に空白行を入れたい
MySQL
-
構造が異なる二つのテーブルをunionで結ぶには?
MySQL
-
Unionの結果全体をOrder By したい。
SQL Server
-
4
SELECTで1件のみ取得するには?
Oracle
-
5
SQLServerでNULLを挿入したいです
SQL Server
-
6
データベースのINT型項目にNULLはNG?
MySQL
-
7
UNIONする際、片方テーブルしかないカラムも利用
MySQL
-
8
SQL文のwhere条件文で使う <> の意味はなんですか
その他(データベース)
-
9
SQLで特定の項目の重複のみを排除した全項目を取得する方法
その他(プログラミング・Web制作)
-
10
GROUP BYを行った後に結合したい。
Oracle
-
11
exeファイルの中身を見ることは可能ですか?
フリーソフト
-
12
Chr(13)とChr(10)の違いは?
PowerPoint(パワーポイント)
-
13
【SQL】他テーブルに含まれる値に合致する行を抽出
その他(データベース)
-
14
日付型のフィールドに空白を入れる方法を教えてください
その他(データベース)
-
15
INSERT文でフィールドの1つだけを他のテーブルから取ってきた値を入れたい
その他(データベース)
-
16
CSVファイルの中で、「 , 」カンマを使いたい
その他(コンピューター・テクノロジー)
-
17
単一グループのグループ関数ではありません。
Oracle
-
18
SQL 複数テーブルのupdate
Oracle
-
19
特定条件でWHERE句の条件を変更したい
SQL Server
-
20
テーブルに存在しない列をselect文で出力する事はできないでしょうか?
PostgreSQL
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
人気Q&Aランキング
-
4
Postgresqlのレポート機能について
-
5
auto_increment型
-
6
POSTGRESQL 検索スピードが遅い
-
7
Postgresのデータ領域の拡張に...
-
8
フィールドの入れ替えはできま...
-
9
javaでデータベース上のテーブ...
-
10
PostgreSQL 8.0.2 の ERROR: r...
-
11
SQLにて指定日付より前、かつ最...
-
12
2つのテーブルで引き算 postgres
-
13
VARCHAR型の数値比較
-
14
MS Access から PostgreSQL へ...
-
15
SQL update方法
-
16
SQL 複数テーブルのupdate
-
17
外部キーだけのテーブル(主キ...
-
18
住所のDBテーブル、マスターの...
-
19
Accessでデータシートに同じデ...
-
20
SQL、2つのテーブルで条件一致...
おすすめ情報
公式facebook
公式twitter