MySQL'de DATETIME DATE olarak nasıl kullanılır?


92

Benim sorgum bu. Bir sürü girdim var ve bunları tarihe göre gruplamak istiyorum. Ancak veritabanımda tarih olması yerine, bir tarih saat alanım var. Ben ne yaparım?

select * from follow_queue group by follow_date cast follow_date as date

Bu çalışmıyor.


2
Deneyin: select * from follow_queue group by cast(follow_date as date)önce.
NawaMan

3
yayınlamanıza gerek yok, sadece DATE () işlevini kullanın
markus

DATE () işlevi tarih saati bir dizeye çevirmiyor mu? Elbette, tarihe göre gruplama için işe yarıyor, ancak sorunun ifadesine göre NawaMan'ın cevabının daha doğru olduğunu düşünüyorum
DJDave

Yanıtlar:


179

DATE()Fonksiyonu kullanın :

select * from follow_queue group by DATE(follow_date)

Tarih başına girişlerin "sayısını" nasıl alabilirim? Yalnızca alanı seçin, follow_queue grubundan tarihe göre sayın (*) (follow_date)?
Zack Burt

3
Evet. select DATE(follow_date), count(*) from follow_queue group by 1
ChssPly76

2
1'e göre grupla? Bu ne anlama geliyor?
Zack Burt

11
Bu durumda, seçim listesindeki ilk sütuna göre gruplama anlamına gelir DATE(follow_date). Bunu da yapabilirsiniz ORDER BY- ORDER BY 1, 2örneğin
ChssPly76

-7

3
Doğru / aynı yanıt, gönderinizden 5 yıl önce sağlanmıştır. Köprüleri sunmak istiyorsanız, bunları sorunun altına yorum olarak eklemeniz yeterlidir. Bu bir cevap olarak değerli değildir ve olumsuz oylara dayanarak diğer birçok gönüllünün de aynı fikirde olduğu görülmektedir. Mantığımı kabul ederseniz ve kayıp temsilci puanlarınızı kurtarırsanız silmekten çekinmeyin (aksi takdirde, Topluluk bu işlemi sizin adınıza her şekilde yapmaya karar verebilir).
mickmackusa
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.