如何对四个表使用内连接查询

时间:2012-03-30 05:03:52

标签: sql

我的数据库中有四个表格(备注费用类别项目)。

表将在特定类别ID上包含很多项目 items表有字段

id(primary key), item name(text), unit(text), category id(foreign key)

类别表只有两个字段 类别表有字段

id(primary key), cat_id(integer), category name(text)

备注表用于记录每个购物单。 笔记表有字段

note_id(primary key), date(DATE), total cost(integer)

费用表用于使用note id作为外键存储所购买的商品及其在特定购物单下的相应数量和价格 费用表有字段

id(primary key), note_id(foreign key), quantity(integer), price(integer), item_name(text)

当我输入起始日期,日期和特定类别时,我需要在该类别下购买的日期和之间的项目。 我需要一个将输出为:

的查询
ITEM NAME           TOTALQTY          TOTALPRICE
carrot                5kg                 500

任何人都可以帮我解决问题吗?

1 个答案:

答案 0 :(得分:3)

试试这个

select A.name, sum(C.unit), A.unit, sum(C.price) 
from items as A 
    INNER JOIN categories as B ON A.category=B._id
    INNER JOIN expenses as C ON A.name=C.item_name
    INNER JOIN notes as D ON C.Note_id=D._id
where 
    D.date1 between '2012-01-01' and '2012-03-31' and B.name='Vegetables'
group by
    A.name, A.unit