簡體   English   中英

選擇所有MySQL數據,按月份,年份計數記錄不正常

[英]Select all MySQL data, count records by month, year not working correctly

我有一個帶有IP地址列表的數據庫表,每個IP地址都有一個datetime列,從datetime上來說,該示例類似於以下示例:

ip_address    | date_first_viewed
192.122.42.2    2015-12-23 14:03:10
183.123.13.4    2015-12-23 02:11:10
193.311.31.6    2015-11-10 12:29:00

我正在嘗試根據月,年對數據進行選擇,計數和分組,因此它將顯示為:

(2015, 12)  2
(2015, 11)  1

這是我當前正在使用的查詢,盡管它不返回任何日期?

$sql8 = "SELECT COUNT(ip_address) as count, EXTRACT(YEAR_MONTH FROM date_first_viewed) as date
         FROM `all_website_stats`
         GROUP BY EXTRACT(YEAR_MONTH FROM date_first_viewed)";

您的SQL看起來不錯。 剛剛逃出保留字countdate與反引號,以避免問題。 要以所需的格式獲取日期,您可以嘗試以下查詢,該查詢只是將您要格式化的其他字符連接起來:

SELECT CONCAT('(', YEAR(date_first_viewed), ', ', MONTH(date_first_viewed), ')') FROM table;

因此,對於您的示例:

SELECT COUNT(ip_address) as `count`, CONCAT('(', YEAR(date_first_viewed), ', ', MONTH(date_first_viewed), ')') as `date`
     FROM `all_website_stats` GROUP BY CONCAT('(', YEAR(date_first_viewed), ', ', MONTH(date_first_viewed), ')')";

應該做到的!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM