sql >> データベース >  >> RDS >> Sqlserver

一定の間隔での明確なランダム時間の生成

    問題OP rand()だけを使用しているときに持っていた クエリごとに1回の評価によるものです 。

    ドキュメントから

    以下で説明するアプローチでは、最適化が削除され、この動作が抑制されるため、rand() 行ごとに1回評価されます :

    dateadd( second
           , rand(cast(newid() as varbinary)) * 43200
           , cast('08:00:00' as time) )
    
    • newid() タイプ uniqueidentifierの一意の値を生成します ;
    • 値はcastで変換されます シードとして使用する rand([seed]) 疑似ランダムfloatを生成する関数 0から1までの値 、およびシードとして は常に一意です戻り値も一意です。

    SQLFiddle



    1. Oracle VARCHAR列の数値比較はどのように機能しますか?

    2. Oracle-値を行から範囲に変換する

    3. WAMPはローカルネットワークにアクセスできません403禁止

    4. MariaDBとは何ですか? MariaDBはどのように機能しますか?