单个表的派生表以获取正确的结果集

时间:2018-04-22 05:26:38

标签: sql join conditional-statements multiple-columns derived-table

我有一个表,我需要使用派生表获取结果。 显示名称以“S”或“W”开头的产品  属于Stationary,价格超过300卢比。 enter image description here

我试过但是我有多个相同的专栏。这是正确的还是如何纠正。

        select * from
        (
           select * from tblProduct 
           where (P_name like 'S%' or  P_name like 'W%') 
         ) A
         join
         tblProduct t
       on t.P_id=a.P_id
        where a.P_family like '%Stationary%' and a.cost >300

2 个答案:

答案 0 :(得分:1)

为什么你需要一个派生表?你可以这样做:

    select * from tblProduct 
    where P_family like '%Stationary%' 
    and cost > 300
    and (P_name like 'S%' or  P_name like 'W%');

答案 1 :(得分:0)

将其视为

select order.*,p.p_name from orderTable order left join tblProduct 
where p.P_name like 'S%' or p.P_name like 'W%' and
order.P_family='Stationery' and order.cost>300

现在更改 orderTable name 作为上方图片,然后您就可以获得所需的结果。