Bagikan melalui


RAND (Transact-SQL)

Berlaku untuk:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics

Mengembalikan nilai float pseudo-random dari 0 hingga 1, eksklusif.

Konvensi sintaks transact-SQL

Sintaksis

RAND ( [ seed ] )

Catatan

Untuk melihat sintaks Transact-SQL untuk SQL Server 2014 (12.x) dan versi yang lebih lama, lihat Dokumentasi versi sebelumnya.

Catatan

Sintaks ini tidak didukung oleh kumpulan SQL tanpa server di Azure Synapse Analytics.

Argumen

Benih

Adalah ekspresi bilangan bulat (tinyint, smallint, atau int) yang memberikan nilai seed. Jika seed tidak ditentukan, SQL Server Database Engine menetapkan nilai seed secara acak. Untuk nilai seed tertentu, hasil yang dikembalikan selalu sama.

Jenis yang dikembalikan

float

Keterangan

Panggilan RAND() berulang dengan nilai seed yang sama mengembalikan hasil yang sama.

  • Untuk satu koneksi, jika RAND() dipanggil dengan nilai seed tertentu, semua panggilan RAND() hasil hasil berikutnya berdasarkan panggilan seeded RAND() . Misalnya, kueri berikut selalu mengembalikan urutan angka yang sama.

    SELECT RAND(100), RAND(), RAND();
    
  • Saat Anda menggunakan RAND() fungsi dalam kueri UPDATE atau INSERT , semua baris yang terpengaruh mendapatkan nilai yang sama.

Contoh

Contoh berikut menghasilkan empat angka acak berbeda yang dihasilkan oleh RAND() fungsi .

DECLARE @counter SMALLINT;

SET @counter = 1;

WHILE @counter < 5
BEGIN
    SELECT RAND() Random_Number
    SET @counter = @counter + 1
END;
GO

Baca juga