Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Memasukkan Waktu Tarikh Rawak Dalam Julat Tertentu dalam MySQL?

Bagaimana untuk Memasukkan Waktu Tarikh Rawak Dalam Julat Tertentu dalam MySQL?

DDD
DDDasal
2025-01-01 03:22:09951semak imbas

How to Insert Random Datetimes Within a Specific Range in MySQL?

Memasukkan Waktu Tarikh Rawak dalam Julat dalam MySQL

Memasukkan nilai masa tarikh rawak dalam julat tertentu boleh mencabar menggunakan SQL. Memandangkan julat seperti "2010-04-30 14:53:27" hingga "2012-04-30 14:53:27", memasukkan nilai dengan tepat dalam julat itu boleh mengelirukan.

Penyelesaian:

Untuk memasukkan nilai masa tarikh rawak dalam julat yang ditentukan, gunakan pendekatan berikut:

INSERT INTO `sometable` VALUES(
    FROM_UNIXTIME(
        UNIX_TIMESTAMP('2010-04-30 14:53:27') 
        + FLOOR(0 + (RAND() * 63072000))
    )
)

Penjelasan:

  • Fungsi UNIX_TIMESTAMP() menukar tarikh dan masa asas ("2010-04-30 14 :53:27") kepada cap waktu Unix.
  • RAND() menjana rawak nombor titik terapung antara 0 dan 1.
  • 63072000 ialah bilangan saat dalam dua tahun (atau 60 60 24 365 2).
  • FLOOR() membundarkan nombor rawak yang dijana ke bawah kepada yang terdekat integer.
  • Nilai yang terhasil ditambahkan pada cap waktu Unix asas, mewakili bilangan saat rawak dalam julat dua tahun.
  • FROM_UNIXTIME() menukar cap waktu Unix yang diubah suai kembali kepada DATETIME .

Walaupun pendekatan ini agak tepat, perlu diingatkan bahawa dalam tempoh yang lebih lama tempoh, faktor seperti tahun lompat mungkin menyebabkan sisihan kecil daripada julat yang tepat.

Atas ialah kandungan terperinci Bagaimana untuk Memasukkan Waktu Tarikh Rawak Dalam Julat Tertentu dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn