posts
tablomda, her bir kayıt için zaman damgasını kaydeder.Zaman damgasından günlük grup
Bu zaman damgası sütununu kullanarak gönderileri her gün gruplandırabilir misiniz?
posts
tablomda, her bir kayıt için zaman damgasını kaydeder.Zaman damgasından günlük grup
Bu zaman damgası sütununu kullanarak gönderileri her gün gruplandırabilir misiniz?
Bu nasıl? DATE
fonksiyonunu kullanarak:
SELECT DATE(FROM_UNIXTIME(MyTimestamp)) AS ForDate,
COUNT(*) AS NumPosts
FROM MyPostsTable
GROUP BY DATE(FROM_UNIXTIME(MyTimestamp))
ORDER BY ForDate
Bu, tablo için veri vardır, her tarih mesajların sayısını gösterecektir.
SELECT
*
FROM
(
SELECT DATE(FROM_UNIXTIME(MyTimestamp)) AS ForDate,
ROW_NUMBER() OVER (PARTITION BY DATE(FROM_UNIXTIME(MyTimestamp)) ORDER BY MyTimeStamp) AS PostRowID,
*
FROM MyPostsTable
)
AS sequenced_daily_posts
WHERE
ForDate = <whatever date(s) you want>
AND PostRowID <= 2
Teşekkürler, ama son yorumuma bakın: 'Sadece her tarihte son yazılanların 2'sini göstermek istiyorum 'bence bu sorgu yalnızca yayınlandığı tarihte 2 yayın yazıyor –
Sorguladım ve sözdizimi hatası verdi. TARİHİNE GÖRE (FROM_UNIXTIME (MyTimestamp))) –
Bir günde 1 gönderi varsa, o gün için bir yayın gösterilir. Bir günde 2 yayın varsa, o gün için her iki yayını da gösterir. Bir günde 3 veya daha fazla yayın varsa, o gün için yalnızca ilk 2 yayın gösterilir. (Her günün son iki mesajını göstermesi için SİPARİŞE GÖRE ekleyin.) Günde 2 güne kadar olan bu limitin yüz gününüz olup olmadığına, toplamda 200 adete kadar kayıt yapmanıza gerek yoktur. – MatBailie
SELECT DATE(timestamp) AS ForDate,
COUNT(*) AS NumPosts
FROM user_messages
GROUP BY DATE(timestamp)
ORDER BY ForDate
Bu benim için bulundu. "2013-03-27 15:46:08" gibi zaman damgası var.
This MySQL 5.1.52'de çalıştı.DATE (FROM_UNIXTIME (MyTimestamp)) önceki cevapta null döndü. –
Cevabımı buldum, ancak cevabınız yanlış, dönüş null, doğru: 'DATE (FROM_UNIXTIME (timestamp))' –
Düzenlenen cevabınız doğru, teşekkürler –
@ p.campbell: her tarih için satırları nasıl sınırlandırabiliriz ? örnek: '2011-05-11' için ben 10 yazı var ve' 2011-05-12' 20 yazı için, ben her tarih için '2 yazı 'göstermek istiyorum, bana yardımcı olabilir misiniz? –