[英]Group by year in date field in MySQL
我有一個帶有客戶表的MySQL數據庫。 一些偽數據是:
customer_id date
000001 2008-10-10
000002 2008-11-11
000003 2010-01-02
000004 2007-04-03
000005 2010-05-05
我想運行一個查詢,它會給我這樣的結果:
year customer_count
2007 1
2008 2
2010 2
我知道我需要使用分組依據,但是我無法解決如何根據日期字段的年值進行分組以及如何按順序進行分組的問題。
從日期中提取年份並按其分組
select year(date) as year,
count(customer_id) as customers
from your_table
group by year
order by year asc
使用YEAR
函數獲取日期的年份部分,並將其用於分組和排序。
SELECT YEAR(date) AS year, COUNT(*) AS customer_count
FROM customer
GROUP BY year
ORDER BY year
使用EXTRACT
函數獲取日期的相關部分:
select extract(YEAR from join_d)"Year",count(DISTINCT customer_id) "customer_count"
from customer
group by year
order by year;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.