如何查询两个表中的项目数?

时间:2016-08-13 18:37:16

标签: android sqlite

我的数据库有一个Manifest表和一个Item表,Manifest可以有1个到多个Item但是1个Item只能有1个Manifest。表格'结构如下:

清单表

ID    Name
1     Bill_1
2     Bill_2

项目表

ID    Name    Manifest_ID (FK)
1     Item_1  1
2     Item_2  1
3     Item_3  2

查询是什么,以便我可以获得以下结果?

查询结果

Manifest_ID    Manifest_Name    Number of Item
1              Bill_1           2
2              Bill_2           1   

2 个答案:

答案 0 :(得分:0)

使用内部联接和分组:

SELECT  Manifest.ID, Manifest.Name, count(Manifest_ID)
    FROM Manifest INNER JOIN Item ON Manifest.ID = Item.Manifest_ID
    group by Manifest_ID;

答案 1 :(得分:0)

感谢@Matt Raines提供的提示。我已通过以下查询成功解决了这个问题:

SELECT m._id, m.name, COUNT(i._id) AS 'Number of Item' FROM Manifest m 
LEFT JOIN Item i ON m._id = i.manifest_id 
GROUP BY m._id