Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Cách tạo dữ liệu ngẫu nhiên trong máy chủ SQL

Không quá khó để tạo dữ liệu ngẫu nhiên, ngay cả trong SQL

Ví dụ:để lấy một tên người dùng ngẫu nhiên từ bảng hồ sơ người dùng của bạn.

BEGIN
-- get a random row from a table
DECLARE @username VARCHAR(50)
SELECT @username = [Username] FROM (
    SELECT ROW_NUMBER() OVER(ORDER BY [Username]) [row], [Username]
    FROM [UserProfile]
) t 
WHERE t.row = 1 + (SELECT CAST(RAND() * COUNT(*) as INT) FROM [UserProfile])

print(@username)
END

Để tạo một số nguyên ngẫu nhiên ...

BEGIN
-- get a random integer between 3 and 7 (3 + 5 - 1)
DECLARE @totalviews INT
SELECT @totalviews = CAST(RAND() * 5 + 3 as INT)
print(@totalviews)
END

Để tạo một chuỗi varchar ngẫu nhiên

BEGIN
-- get a random varchar ascii char 32 to 128
DECLARE @videoname VARCHAR(160)
DECLARE @length INT
SELECT @videoname = ''
SET @length = CAST(RAND() * 160 as INT)
WHILE @length <> 0
    BEGIN
    SELECT @videoname = @videoname + CHAR(CAST(RAND() * 96 + 32 as INT))
    SET @length = @length - 1
    END
print(@videoname)
END

Và cuối cùng, một ngày ngẫu nhiên

BEGIN
-- get a random datetime +/- 365 days
DECLARE @uploadtime DATETIME
SET @uploadtime = GETDATE() + (365 * 2 * RAND() - 365)
print(@uploadtime)
END


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Các câu trả lời hàng đầu cho 5 câu hỏi nhức nhối về hàm COALESCE trong SQL Server

  2. Sự khác biệt giữa cơ sở dữ liệu và lược đồ

  3. SQL Server 2008:TOP 10 và phân biệt cùng nhau

  4. Phạm vi đặt số lượng hàng trong SQL

  5. Nhận Phần tử thứ n từ lần cuối cùng trong một xml trong Máy chủ Sql