MySQL datetime, group by day

2 příspěvky

Archiv diskusního fóra

Fórum je uzavřené a slouží pouze ke čtení. Některé informace mohou být zastaralé.

  1. Mám tabulku, kam loguji udalosti. Jeden ze sloupců je DATETIME. Chci udělat výstup, abych věděl, kolik je který den zalogovaných událostí. tabulka: 2007-11-29 23:47:51 - udalost1 2007-11-30 01:21:12 - udalost2 2007-11-30 02:33:05 - udalost3 Chci výsledek: 2007-11-29 - 1 2007-11-30 - 2 Zkusil jsem tedy: SELECT count(*) as pocet, datumcas FROM `tabulka` GROUP BY YEAR(datumcas), MONTH(datumcas), DAY(datumcas) Dostal jsem: #1064 - You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '( datumcas ) LIMIT 0, 30' at line 1 Zkusil jsem tedy ubrat DAY (aby mi to hodilo jen soucet za jednotlive mesice: SELECT count(*) as pocet, datumcas FROM `tabulka` GROUP BY YEAR(datumcas), MONTH(datumcas) Toto FUNGUJE. Nevíte někdo, co je za problem s funkcí DAY() aplikovanou na sloupec typu datetime?
  2. Tak už jsem na to přišel je třeba použít funkci DAYOFMONTH(). Funkce DAY() jede jen v některých verzích MySQL 4.x.

← Zpět na všechna témata