[解決済み] SQL Server テーブルからランダムな n 行を選択する
2022-03-16 05:13:13
質問
SQL Server のテーブルに約 5 万行の行があります。そのうちの約5,000行をランダムに選択したいのです。乱数カラムを持つ一時テーブルを作成し、そこに私のテーブルをコピーし、一時テーブルをループして、各行を
RAND()
そして、そのテーブルから、乱数列が < 0.1 であるものを選択します。可能であれば、1つのステートメントで、これを行うより簡単な方法を探しています。
この記事
を使用することを提案します。
NEWID()
という関数があります。それは期待できそうですが、ある割合の行を確実に選択する方法がわかりません。
どなたかやったことのある方いらっしゃいますか?何かアイデアはありますか?
解決方法は?
select top 10 percent * from [yourtable] order by newid()
大きなテーブルに関する "pure trash" のコメントに対して:パフォーマンスを向上させるために、このようにすることができます。
select * from [yourtable] where [yourPk] in
(select top 10 percent [yourPk] from [yourtable] order by newid())
このコストは、値のキースキャンと結合コストになりますが、選択率が小さい大きなテーブルでは妥当なところでしょう。
関連
-
[解決済み] SQL ServerでSELECTからUPDATEする方法とは?
-
[解決済み] SQLテーブルで重複する値を検索する
-
[解決済み] SQL Server で複数行のテキストを 1 つのテキスト文字列に連結する方法
-
[解決済み] リストからランダムに項目を選択するにはどうすればよいですか?
-
[解決済み] SQL Server テーブルにカラムが存在するかどうかを確認する方法は?
-
[解決済み] SQL Server の DateTime データ型から日付だけを返す方法
-
[解決済み] SQLのSELECTでIF...THENを実行するにはどうすればよいですか?
-
[解決済み] SQLの複数列の順序付け
-
[解決済み] SQL Server の CASE ステートメントで OR がサポートされていない。
-
[解決済み】SQL Serverで既存のテーブルにデフォルト値を持つカラムを追加する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
解決策:ユーザー root で localhost:3306 にある MySQL に接続できませんでした。
-
plsql-stored-procedure ORA-06550 エラー処理
-
[解決済み] SQL Serverで実行中の合計を計算する
-
[解決済み] アドホッククエリとは何ですか?
-
[解決済み] SQL Serverでテーブルからカラム名を取得するにはどうすればよいですか?
-
[解決済み] ある列の最大値を持つ行を取得する
-
[解決済み] SQLでランダムな行を要求する方法は?
-
[解決済み] SQLサーバーで行を列に効率的に変換する
-
[解決済み] Selectステートメントで特定のフィールドの重複を検索する
-
[解決済み] [Solved] T-SQLのselectで各行に乱数を生成する方法は?