Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Wybierz losową datę z określonego zakresu

select DateAdd(d, ROUND(DateDiff(d, '1950-01-01', '1999-12-31') * RAND(), 0), '1950-01-01')

EDYTUJ

Jeśli ma to zostać wykonane jako część instrukcji zwracającej wiele wierszy lub jako część aktualizacji, RAND() zwróci pojedynczą wartość dla całego zestawu wyników. W takim przypadku można użyć RAND(CHECKSUM(NEWID())).

select DateAdd(d, ROUND(DateDiff(d, '1950-01-01', '1999-12-31') * RAND(), 0), '1950-01-01'),
       DateAdd(d, ROUND(DateDiff(d, '1950-01-01', '1999-12-31') * RAND(CHECKSUM(NEWID())), 0), '1950-01-01')
from master..spt_values where type = 'P'


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak przekazać parametry wartości tabeli do procedury składowanej z kodu .net?

  2. SQL Server:kolumny do wierszy

  3. Wybierz wartość, jeśli warunek w SQL Server

  4. Jak utworzyć kolumnę obliczeniową w tabeli SQL Server 2008

  5. Jak uzyskać zapytanie grupy SQL formularza pierwszego rzędu?