大規模なデータセットを処理する場合、処理または分析のために行のサブセットをランダムに選択することが必要になる場合があります。 SQL には、このタスクを実行するためのいくつかの方法が用意されています。
Microsoft SQL Server で行をランダムに選択する一般的な方法は、NEWID() 関数を使用することです。次のクエリは、customerNames テーブルからランダムな 5 行のデータを取得します:
<code class="language-sql">SELECT TOP 5 Id, Name FROM customerNames ORDER BY NEWID()</code>
NEWID() 関数は、クエリが実行されるたびに変更されるグローバル一意識別子 (GUID) を生成し、毎回異なる行セットが返されるようにします。
他の SQL 実装では、異なる構文を使用して行をランダムに選択します。次の表は、一般的に使用されるデータベースの例を示しています:
数据库 | 语法 |
---|---|
MySQL | ORDER BY RAND() |
PostgreSQL | ORDER BY RANDOM() |
Oracle | ORDER BY dbms_random.value |
SQLite | ORDER BY RANDOM() |
IBM DB2 | ORDER BY RAND() |
以上がSQL で行をランダムに選択するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。