错误的退货价值

时间:2013-12-19 18:46:12

标签: sql return

我必须展示他们所有生产商来自同一地区的产品(相同的zip_code)。但它虽然应该没有返回任何东西。为了返回结果,我还需要关联什么呢?

create view Data as 
select product_code , Offer.producer_code, zip_code 
from Producer, Offer 
where Producer.producer_code=Offer.producer_code

select product_code 
from  Data
where producer_code =all (select a.zip_code 
                from Data as a, Data as b
                where a.zip_code = b.zip_code)

1 个答案:

答案 0 :(得分:0)

我认为你应该尝试以下方法:

SELECT 
    p.product_code,
    o.producer_code
FROM Producer AS p
INNER JOIN Offer AS o
ON p.producer_code = o.producer_code
WHERE p.zip_code=@zip_code

@zip_code是您要查找的制作人的zip_code。另外,我认为您编写的查询并不符合您的要求。因为您将使用至少有一个其他产品的所有产品,这些产品由生产者使用相同的zip_code生产。您不会将他们生产的产品放在某个zip_code中。