Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

重複行を削りたいならunionを使う。重複行を生かしたいならunion allを使う。 ここまではよいとして、どっちでもよい場合、例えば 重複行があり得ない場合 IN句のサブクエリなので重複行があってもなくても結果に影響しない場合 にどうするか。 以前はunionをデフォルトにして、重複行を生かしたいときだけunion allしていたが、今は逆に、union allをデフォルトにして重複行を削りたいときだけunionする、という方針にしている。理由はいくつかあるが、allを付けると Sort->Unique の処理が走らないのでパフォーマンス上有利になるはず、というのが大きい。 絶対に重複行が発生しないことが分かっているクエリでも、unionを使うとSort->Uniqueの処理が走ってしまうDBMSは多い。 例えばPostgreSQL: UNION bench=# explain ana
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く