<<   2017年 10月   >>
S MTW TF S
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31     

検索・ログイン
ログイン
現在のモード: ゲストモード
USER ID:
PASS:
管理者ページ
新着記事
カテゴリー

月別記事
ランキング
コメント
リンク
プロフィール
その他

POWERED BY
POWERED BY
ぶろぐん
PHP
PostgreSQL
SKIN BY
ブログンサポート

DELETE文でのORDER BY区、LIMIT区の有効性
UPDATE文でも使えるそうです、MySQLでは。このところBlognPlusのソースを読んだり、モジュールを作成したりしていましたが、MySQL用のデータベースハンドラを見ていた時に見なれないSQL文と出会いました。

リレーショナルデータベースと呼ばれるものを日常的に扱っていますが、PostgreSQLから始めたのでほぼPostgreSQLしか知りません。時々MS-SQLを扱ったりもするのですが、MySQLはこれだけ普及しているのにほとんど触った事がないという。

phpはよく使うのにねー、変だよね-、なんて思われそうですが。歴史的な経緯からか、PostgreSQLは標準SQLに準拠しています。いわゆる方言をあまり持っていません。それに比べるとMySQLは独自の進化を遂げたRDBといっても良いでしょう。

UPDATEやDELETEに、LIMITやORDER BYが付いてるなんて驚きました。でもこれ、考えてみると便利そうだと思います。例えば、アクセスログなどのテーブルを最新の100件だけ残して削除したい、なんて時にそうですね。HAVING区と合わせれば一度のSQL文実行でいけちゃいそうです。

上位ランカー10名だけは特別ボーナスで+10点加算、なんて更新も一文で書けます。ループ処理を必要としないので、すっきり出来ますね。こういう拡張はPostgreSQLでもやって欲しいと思っています。
ソフトウェア::PostgreSQL◇14:58◇comments (0)trackback (0)
コメント
コメントする









画像の文字を半角で入力して下さい。
この記事のトラックバックURL
http://www.ikumi-u.net/blogn/tb.php/18
トラックバック