簡體   English   中英

跨一對多關系的 DB2 SQL 計數

[英]DB2 SQL Count across one to many relationship

我在 IBM DB2 數據庫中有兩個表處於一對多關系。 我想不出一種方法來輕松地用文字描述我在做什么,所以我正在鏈接一個 SQLFiddle。

這是一個關於我正在做的工作的 SQLFiddle; 點擊這里

SQLFiddle 的工作方式與我需要的完全一樣。 我的問題是,我使用的是 IBM DB2 數據庫並且 COUNT 函數似乎不起作用。 有沒有人有辦法以 IBM DB2 兼容的方式返回 SQLFiddle 所做的事情?

這是我從 i Navigator 得到的錯誤; 點擊這里

您正在按錯誤的列聚合。 我認為這是您想要的查詢:

SELECT Table1.quote, COUNT(Table2.quote) as TotalItem
FROM Table1 LEFT JOIN
     Table2 
     ON Table1.quote = Table2.quote
GROUP BY Table1.quote
---------^

您需要按Table1.quote聚合,因為Table2.quote可能是NULL ,因為LEFT JOIN

編輯:

您的特殊問題似乎是您有兩個同名的表。 只需使用列別名:

SELECT t1.quote, COUNT(t2.quote) as TotalItem
FROM Table1 t1 LEFT JOIN
     Table2 t2
     ON t1.quote = t2.quote
GROUP BY t1.quote;

暫無
暫無

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

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