• 30-07-2021, 11:26:53
    #1
    Arkadaşlar merhaba, konu yeri burasımı bilemedim lakin sorum şu



    tbl_wallpaper tablosunda image_data tarihlerini karıştırmak istiyorum yani şuan olan tarihleri random olarak değiştirilmesini istiyorum.

    Hangi sorguyla bu işlemi gerçekleştirebilirim acaba ? Yeni görsel yükledikçe son yüklenenin tarihi geliyor sorun yok ama anasayfada son gözükenler yerine ben random ara ara girip tarihleri karıştırarak anasayfada farklı içeriklerin çıkmasını sağlamak istiyorum.
  • 30-07-2021, 11:51:21
    #2
    UPDATE tbl_wallpaper SET image_date = CURRENT_TIMESTAMP - INTERVAL FLOOR(RAND() * 365) DAY
    Bu şekilde olması gerekiyor. Örnek bir DB'de deneyerek yapabilirsiniz.
  • 30-07-2021, 11:54:08
    #3
    https://www.w3schools.com/mysql/func_mysql_date_add.asp
    https://stackoverflow.com/questions/...etime-in-mysql

    Aşağıda örnek kodu yazdım,
    tbl_wallpaper tablo,
    image_data = içindeki tarihi değer olarak farzedelim.

    Random int Fonksiyonu ______________ fonksiyonsuz da olur kullanım örnekleri var, (https://www.techonthenet.com/mysql/functions/rand.php)
    CREATE FUNCTION random_integer(value_minimum INT, value_maximum INT)
    RETURNS INT
    COMMENT 'Gets a random integer between value_minimum and value_maximum, bounds included'
    RETURN FLOOR(value_minimum + RAND() * (value_maximum - value_minimum + 1));


    UPDATE
    tbl_wallpaper SET image_data = DATE_ADD(image_data ,INTERVAL - random_integer(20, 120) DAY)

    yani tablodaki tarihlerden rastgele olarak 20 ve 120 arasında bir değer çıkarmış oluyorsunuz.
    Eksiklikler olabilir.
    Bu yolu izlerseniz güncelleyebilirsiniz.
  • 30-07-2021, 13:04:34
    #4
    tarihleri değiştirene kadar veriyi çekerken random çekmeniz daha mantıklı bence. order by rand() yapmanız yeterli
  • 07-08-2021, 19:33:28
    #5
    SABOCES adlı üyeden alıntı: mesajı görüntüle
    Arkadaşlar merhaba, konu yeri burasımı bilemedim lakin sorum şu



    tbl_wallpaper tablosunda image_data tarihlerini karıştırmak istiyorum yani şuan olan tarihleri random olarak değiştirilmesini istiyorum.

    Hangi sorguyla bu işlemi gerçekleştirebilirim acaba ? Yeni görsel yükledikçe son yüklenenin tarihi geliyor sorun yok ama anasayfada son gözükenler yerine ben random ara ara girip tarihleri karıştırarak anasayfada farklı içeriklerin çıkmasını sağlamak istiyorum.
    Arkadaşların dediği gibi image_date kullanamayacaksanız boşuna tabloda yer vermenize gerek yok. Sanal bir kolon oluşturabilirsiniz.

    Tablonuzda image_date'i silin şu şekilde son 7 gün için sanal bir tarih oluşturacak şekilde güncelleyin cümlenizi.

    SELECT (CURRENT_DATE - INTERVAL FLOOR(RAND() * 7) DAY) AS 'image_date'
    • SABOCES
    SABOCES bunu beğendi.
    1 kişi bunu beğendi.