Grupa By:
SELECT COUNT(`id`) AS `Records`, DATE(FROM_UNIXTIME(`date`)) AS `Date`
FROM `table`
GROUP BY DATE(FROM_UNIXTIME(`date`))
wyjściowa:
Records | Date
--------------------------------
10 | 2011-10-19
10 | 2011-10-18
Zamówienie przez:
SELECT `id`, FROM_UNIXTIME(`date`) AS `Date`
FROM `table`
ORDER BY DATE(FROM_UNIXTIME(`date`)) [ASC|DESC]
(choć w rzeczywistości można dostać taką samą kolejność używając tylko FROM_UNIXTIME () Lub surowy date
wartość, ponieważ wszyscy oni stosu prawidłowo w próbie zamawiania)
wyjściowa:
id | Date
--------------------------------
03 | 2011-10-19 12:00:00
02 | 2011-10-18 12:00:00
01 | 2011-10-17 12:00:00
ten przekształca uniksowego znacznika czasu do datetime mysql, a następnie wydobywa wartość daty od tej, która jest stosowana do grupy lub zlecenia klauzuli
Jeśli chcesz grupy na dzień, niezależnie od miesiąca i wykorzystania roku dzień() zamiast Date()
jednak można rozszerzyć na części o „grupie każdy wiersz po dniu” . jaki wynik chcesz pokazać? kiedy grupujesz coś, używasz jakiegoś zagregowanego procesora, takiego jak COUNT() lub SUMA() na polu w grupie.
MySQL Group Functions Reference
MySQL Date & Time Function Reference
Chcę zgrupować każdy wiersz, który należy do tego samego dnia, co jest wyjątkowe. – silvercover
OK, szukasz klauzuli ORDER BY, a następnie – JoshHetland
Przepraszam, wydaje mi się, że nie rozumiem, czy mógłbyś dodać przykład wyjścia, którego potrzebujesz? – JoshHetland