• 23-05-2015, 19:27:17
    #1
    merhaba arkadaşlar
    haber sitemdeki yorum tablosunda;

    yorumid - yorum - haberid - tarih (bu 4 alan var)

    her haberid ye girilen yorumlardan sadece son 5 yorum kalsın diğer yorumlar silinsin istiyorum. bu mysql sorgusu elinde bulunan yada yazabilecek bir arkadaş varmı?


    yorumid - yorum - haberid - tarih (örnek veri)
    1 güzel haber 24 768023823
    2 harika haber 56 761113823
    3 güzel haber 71 768555823
    4 harika haber 89 768011823
    5 güzel haber 104 768678923
    ..
    ..
    ..
  • 23-05-2015, 20:28:02
    #2
    Aşağıdaki sorgu ile son 5 kaydı çekebilirsiniz.

    Select * from yorum order by tarih limit 5
  • 23-05-2015, 20:34:13
    #3
    her haberid ye girilen yorumlardan sadece son 5 yorum kalsın diğer yorumlar silinsin istiyorum üstad. yani her haberde sadece son 5 yorum kalsın istiyorum. sadece son 5 yorumu göstermek istemiyorum son 5 dışındaki kayıtları sqlden silmek istiyorum sorun bu.
  • 23-05-2015, 21:41:35
    #4
    hakyadaadalet adlı üyeden alıntı: mesajı görüntüle
    her haberid ye girilen yorumlardan sadece son 5 yorum kalsın diğer yorumlar silinsin istiyorum üstad. yani her haberde sadece son 5 yorum kalsın istiyorum. sadece son 5 yorumu göstermek istemiyorum son 5 dışındaki kayıtları sqlden silmek istiyorum sorun bu.
    Anladım hocam. Aşağıdaki sorgu işinizi görür.

    EDİT : id olanlar yorumid olacak. Gözümden kaçmış.

    DELETE  i1.*
    FROM    yorum i1
    LEFT JOIN
            (
            SELECT  id
            FROM    yorum ii
            ORDER BY
                    id DESC
            LIMIT 5
            ) i2
    ON      i1.id = i2.id
    WHERE   i2.id IS NULL
  • 23-05-2015, 23:22:01
    #5
    çok teşekkürler üstad. deniycembirazdan

    ydlgr adlı üyeden alıntı: mesajı görüntüle
    Anladım hocam. Aşağıdaki sorgu işinizi görür.

    EDİT : id olanlar yorumid olacak. Gözümden kaçmış.

    DELETE  i1.*
    FROM    yorum i1
    LEFT JOIN
            (
            SELECT  id
            FROM    yorum ii
            ORDER BY
                    id DESC
            LIMIT 5
            ) i2
    ON      i1.id = i2.id
    WHERE   i2.id IS NULL
  • 24-05-2015, 10:12:22
    #6
    üstad tüm tablodaki verileri siliyor sadece 5 kayıt kalıyor...
    haberid yi hiç kullanmamışsın sorun orda sanırım... her haberid için son 5 kayıt kalması gerekirken tüm kayıtlardan son 5 kayıt kalıyor...