Sql

如何寫下 SQL 查詢以獲取表的數據計數?

  • June 5, 2018

我有一張名為 FDR_DATA 的表。表中有以下欄位。欄位為:B1_NAME、B2_NAME、B3_NAME、ELEMENT、DATUM、WERT。現在我想查詢該表中的數據總數,並將生成以下輸出。

sql> select count (*) from fdr_data where datum like (select sysdate -1 from dual);

(它只顯示計數)但我想在計數旁邊列印基準(日期)欄位。

DATUM COUNT

04.05.2016 899019

如何寫下查詢以獲得這樣的輸出?

我已經嘗試過,

sql> select DATUM, count (*) from fdr_data where datum like (select sysdate -1 from dual)

但無法獲得所需的輸出。

sql> select count (*) as fdr_data from fdr_data where datum like (select sysdate -1 from dual);

輸出:

fdr_data    
-------- 
899019    

我不知道是否有任何 SQL 方言提供其他方式,但是您還沒有說您使用的是什麼 SQL 伺服器,但這應該可以工作:

SELECT datum,count(*) FROM fdr_data WHERE datum LIKE (SELECT sysdate-1 FROM dual) GROUP BY datum;

當 WHERE 子句意味著結果中只有一行時,添加 GROUP BY 子句會感覺很奇怪,但是解析器不會知道,所以我們添加它來取悅它。

引用自:https://unix.stackexchange.com/questions/281219