■99851 / inTopicNo.3) |
Re[2]: SQL ランダムに取得して更新 |
□投稿者/ てつ (3回)-(2022/06/13(Mon) 13:48:31)
|
■No99849 (魔界の仮面弁士 さん) に返信 > ■No99848 (てつ さん) に返信 >>SQLについての質問なのですが、別のテーブルにある値をランダムに取得して更新するにはどのようなコードが考えられますか? >>言語はSQLserverです。 > > ランダムな値を生成するのならば RAND 関数ですが、 > 今回はランダムな行を拾ってくる…という意図でしょうか。 > > > テーブル内の件数がそれほど多くない場合には、 > SELECT TOP 3 * FROM テーブル ORDER BY NEWID() > のようにできます。TOP の 後ろには取得したい件数を書きます。 > > テーブルの件数が多い場合は、こちらを参考にしてみてください。 > https://sqlazure.jp/r/sql-server/393/
返信ありがとうございます UPDATE SM SET SM_SBMCD = ( SELECT TOP 58 SBM_CD FROM SBM ORDER BY NEWID() ) メッセージ 512、レベル 16、状態 1、行 89 サブクエリは複数の値を返しました。サブクエリが =、!=、<、<=、>、>= の後に続く場合や、サブクエリが 1 つの式として使われる場合は複数の値は許可されません。 というエラーが出ました
|
|