Postgresql

計算每個 DISTINCT 的所有行

  • November 16, 2018

如何計算 WHERE 語句的所有行:

SELECT DISTINCT column1 FROM table COUNT WHERE date::text LIKE '%2014%';

我的輸出:

column1
=======
info1
info2
info3

所需的輸出:

column1|number_of_rows
=====================
info1  | 2000
info2  | 1500
info3  | 1000

你能支持我如何改進它?

提前致謝。

在這種情況下,您可以使用GROUP BY來獲取不同的 column1 值,而不是將日期轉換為文本,您可以使用EXTRACT函式來實現此目的。

select 
   colum1, 
   count(*) as number_of_rows
from 
   your_table
where 
   extract(year from date) = 2014
group by 
   column1;

引用自:https://dba.stackexchange.com/questions/222754