昨日の続きです。なんとか最後までざっくり10時間くらいで読みきりたい。。。。
12. OFFSET FETCH
× DB2では、OFFSETおよび、FIRSTの指定を行うことができません。
○ DB2では、OFFSETおよび、NEXTの指定を行うことができません。
通常、上記ですが、去年(2016年)の6月にリリースされたDB2の最新版11.1からは
NEXTも指定できますし、OFFSETも指定できるようになっています。
(ただOFFSETの指定位置がSQL標準といっしょかどうか木村は未確認)
13. SELECT結果からテーブルをつくる場合は、インデックスや制約など省かれるので注意。。。。
14. COLUMN SELECT結果の保存
△MySQLは「CREATE TABLE AS」を利用できます。SELECT INTOは、データファイルへのエクスポートになります。
SELECT INTOは著者がその前後で述べているOracle / DB2と同様に変数への値の代入にも使います。See
13.2.9.1 SELECT ... INTO 構文
15. INSERTにMySQLのON DUPLICATE KEY UPDATEの記述はあるのに、PostgreSQL 9.5からサポートされた、同様の機能ON CONFLICT ON CONSTRAINT 制約名 DO UPDATE set name = EXCLUDED.name; の記述なし。
16.計算列のサポート
△計算列 Oracle, SQL Server, DB2では、計算式による列を定義することができます。
○計算列 Oracle, SQL Server, DB2, MariaDB(5.2以降), MySQL(5.7以降)では、計算式による列を定義することができます。
Virtual (Computed) Columns
MySQL 5.7で生成カラムを使って関数INDEXを作成する(Qiita)
とりあえず、今日はここまで。
12. OFFSET FETCH
× DB2では、OFFSETおよび、FIRSTの指定を行うことができません。
○ DB2では、OFFSETおよび、NEXTの指定を行うことができません。
通常、上記ですが、去年(2016年)の6月にリリースされたDB2の最新版11.1からは
NEXTも指定できますし、OFFSETも指定できるようになっています。
(ただOFFSETの指定位置がSQL標準といっしょかどうか木村は未確認)
13. SELECT結果からテーブルをつくる場合は、インデックスや制約など省かれるので注意。。。。
14. COLUMN SELECT結果の保存
△MySQLは「CREATE TABLE AS」を利用できます。SELECT INTOは、データファイルへのエクスポートになります。
SELECT INTOは著者がその前後で述べているOracle / DB2と同様に変数への値の代入にも使います。See
13.2.9.1 SELECT ... INTO 構文
15. INSERTにMySQLのON DUPLICATE KEY UPDATEの記述はあるのに、PostgreSQL 9.5からサポートされた、同様の機能ON CONFLICT ON CONSTRAINT 制約名 DO UPDATE set name = EXCLUDED.name; の記述なし。
16.計算列のサポート
△計算列 Oracle, SQL Server, DB2では、計算式による列を定義することができます。
○計算列 Oracle, SQL Server, DB2, MariaDB(5.2以降), MySQL(5.7以降)では、計算式による列を定義することができます。
Virtual (Computed) Columns
MySQL 5.7で生成カラムを使って関数INDEXを作成する(Qiita)
とりあえず、今日はここまで。
JUGEMテーマ:コンピュータ