プログラマーを職業としてます。 Flex,Air,C#,Oracle,PHPの言語ノウハウを中心に情報発信していきます


SQLServerにはDUALテーブルなんて必要ない

ふと、SQLServerで関数のテストをしてみたいと思って、DUALテーブルがないのかと探してましたが、SQLServerにはそんなものありませんでした。

SQLServerでは、FROM句を省略して書くことができてしまうので、

SELECT GETDATE()

だけ書けば実行できます。

Oracleの場合は、DUALテーブルか何らかのテーブルを指定しないとダメです。

select current_date from dual

Oracleに慣れた人間からすると、ちょっと違和感が。。
SQL標準では、FROMの省略は多分許されていないと思いましたが、
DUALテーブルなんてものも標準仕様ではないので、どっちが良いかという議論は無駄ですよね。
Oracle好きな人はDUALテーブルを作ってしまうかもしれません。

出来れば統一して欲しいところです。

※SQL標準は、有名なSQL92以来進歩していないものだと思い込んでいましたが、少しずつ改正されているんですね。
2008年版がありました。SQLServer2008と混ざってわかりにくい。
TRUNCATE TABLEステートメントなどが追加されてます。

 

== ランキングに参加しています。ぜひクリックお願いします ==

プログラム ブログランキングへ
にほんブログ村 IT技術ブログへ
にほんブログ村

,

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です