Vai ir iespējams izveidot vienkāršu vaicājumu, lai saskaitītu, cik ierakstu man ir noteiktā laika periodā, piemēram, gadā, mēnesī vai dienā, izmantojot TIMESTAMP
lauku, piemēram:
SELECT COUNT(id)
FROM stats
WHERE record_date.YEAR = 2009
GROUP BY record_date.YEAR
Vai pat:
SELECT COUNT(id)
FROM stats
GROUP BY record_date.YEAR, record_date.MONTH
Lai iegūtu ikmēneša statistiku.
Paldies!
GROUP BY YEAR(record_date), MONTH(record_date)
Pārbaudiet datuma un laika funkcijas MySQL.
GROUP BY DATE_FORMAT(record_date, '%Y%m')
Piezīme (galvenokārt potenciālajiem balsotājiem, kas vēlas samazināt balsojumu). Pašlaik tas var nebūt tik efektīvs kā citi ieteikumi. Tomēr es to atstāju kā alternatīvu, turklāt tādu, kas var kalpot, lai redzētu, cik ātrāki ir citi risinājumi. (Jo jūs nevarat atšķirt ātru no lēna, kamēr neredzat atšķirību.) Turklāt, laikam ejot, MySQL dzinējā varētu tikt veiktas izmaiņas attiecībā uz optimizāciju, lai šis risinājums kādā (iespējams, ne tik tālā) nākotnes brīdī kļūtu pilnīgi salīdzināms efektivitātes ziņā ar lielāko daļu citu..
Es mēģināju, izmantojot 'WHERE' paziņojums iepriekš, Es domāju, ka tā ir pareiza, jo neviens to labot, bet es kļūdījos; pēc dažiem meklējumiem es uzzināju, ka tas ir pareizā formula WHERE paziņojumu, lai kods kļūst šādi:
SELECT COUNT(id)
FROM stats
WHERE YEAR(record_date) = 2009
GROUP BY MONTH(record_date)