Bagaimana cara mentransmisikan DATETIME sebagai DATE di mysql?

92

Pertanyaan saya adalah ini. Saya memiliki banyak entri dan saya ingin mengelompokkannya berdasarkan tanggal. Tetapi alih-alih memiliki tanggal di database saya, saya memiliki bidang datetime. Apa yang saya lakukan?

select * from follow_queue group by follow_date cast follow_date as date

Itu tidak berhasil.

Zack Burt
sumber
2
Coba: select * from follow_queue group by cast(follow_date as date)pertama.
NawaMan
3
Anda tidak perlu melakukan transmisi, cukup gunakan fungsi DATE ()
markus
Bukankah fungsi DATE () mentransmisikan datetime ke string? Tentu, ini berfungsi untuk pengelompokan berdasarkan tanggal, tetapi saya pikir jawaban NawaMan lebih tepat berdasarkan frase pertanyaan
DJDave

Jawaban:

179

Gunakan DATE()fungsi:

select * from follow_queue group by DATE(follow_date)
ChssPly76
sumber
Bagaimana cara mendapatkan "hitungan" untuk entri per tanggal? Cukup lakukan pilih bidang, hitung (*) dari grup follow_queue berdasarkan tanggal (follow_date)?
Zack Burt
3
Ya. select DATE(follow_date), count(*) from follow_queue group by 1
ChssPly76
2
Kelompokkan menurut 1? Apa artinya?
Zack Burt
11
Artinya kelompok dengan kolom pertama dalam daftar pilih, dalam kasus ini DATE(follow_date). Anda juga dapat melakukannya dengan ORDER BY- ORDER BY 1, 2, misalnya
ChssPly76
-7

http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html

http://www.tutorialspoint.com/mysql/mysql-date-time-functions.htm

gunakan fungsi Tanggal secara langsung. Semoga berhasil

Abhi
sumber
3
Jawaban yang benar / sama diberikan 5 tahun sebelum posting Anda. Jika Anda ingin menawarkan hyperlink, tambahkan saja sebagai komentar di bawah pertanyaan. Ini tidak berharga sebagai jawaban dan tampaknya beberapa relawan lain setuju - berdasarkan downvote. Jangan ragu untuk menghapus jika Anda setuju dengan logika saya dan Anda akan memulihkan poin reputasi yang hilang (jika tidak, Komunitas dapat memutuskan untuk mengambil tindakan ini atas nama Anda bagaimanapun juga).
mickmackusa