选择计数>的行少数几个表中{0}

时间:2016-01-19 07:32:44

标签: mysql sql

我有一个包含以下表格的数据库:

  

信息,红色,小时,绿色

信息表中包含我在商店中销售的所有商品。其余表格中包含该产品的库存如下:

示例:

++ Information 表格:

ID,名称,价格

  

01,测试,100 $

     

02,testagain,50 $

     

03,t03,30 $

     

04,t04,50 $

     

05,t05,122 $

++ Red 表格:

id,sid,计数

  

01,01,50

这意味着“测试”产品,在Red仓库中,我有50件。

++ Green 表格:

id,sid,计数

  

01,03,20

++ Hourse 表格:

id,sid,计数

  

01,02,150

我可以从information表中选择我的仓库(红色,绿色,小时)中的counts > 0

在我们的示例中,它仅显示:test (id 01), testagain (id 02) and t03 (id 03)但未显示ID为04和05。

是否可以使用SQL?

谢谢,抱歉这个烂摊子!

2 个答案:

答案 0 :(得分:-1)

使用左连接

select a.id, a.name, isnull(b.counts,0)
 from information as a
left join (select * from red
   union all
    select * from green
   union all
    select * from Hourse 
) b on a.id= b.sid

答案 1 :(得分:-1)

检查此查询可能有效。

    select * from information i left join red r 
    on i.id = r.sid 
    left join green g 
    on i.id = g.sid 
    left join hourse h 
    on i.id = h.sid 
    group by
    i.id having count > 0