- - PR -
処理を高速にするSQLの組み合わせ
1
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-05-29 13:41
カラム1 カラム2
@ A 1 A A 2 B A 3 C B 1 D B 2 E B 3 F B 4 G C 1 H C 2 I C 3 J C 4 カラム1をwhere条件に検索した結果のうちカラム2の値が上位2件だけを残し、それ以外は削除する処理を考えています。 例えばAが対象の場合は処理後に残るレコードは@、A、C〜Jです。 ※当該テーブルはカラム1とカラム2でキーになります。 テーブル構成は変更したり一時テーブルを使用してもかまいませんのでできるだけ高速に処理を完了させるための手法を教えてください。 困っています。よろしくお願いいたします。 [ メッセージ編集済み 編集者: mukoubuti 編集日時 2006-05-29 13:50 ] | ||||||||
|
投稿日時: 2006-05-29 13:56
一番重要なDBMSが何かが書かれていませんが、 何を使用されていますか? またそのバージョンは何でしょうか? _________________ 夏椰 @ わんくま同盟 夏椰の庵 Microsoft MVP for Windows Server System - SQL Server ( Jul 2006 - Jun 2008 ) | ||||||||
|
投稿日時: 2006-05-29 14:36
失礼しましたDBMSはSQL SERVER 2000です。
| ||||||||
|
投稿日時: 2006-05-29 14:56
mukoubutiさんが考えているアイデアとか
現行こうしているけど遅いとかあるのでしょうか? 自分がさっくり考えるとしたらこんな感じになりそうです。
削除が物理削除のDELETEであれば、DELETE文に置き換えてください。 _________________ 夏椰 @ わんくま同盟 夏椰の庵 [ メッセージ編集済み 編集者: 夏椰 編集日時 2006-05-29 14:56 ] | ||||||||
|
投稿日時: 2006-06-07 10:37
回答ありがとうございました。当質問はクローズします。
|
1