【发布时间】:2013-01-30 21:49:19
【问题描述】:
我正在尝试根据产品类型为产品选择不同的结果集。 因此,如果我的产品应该是一本书,我希望它查找普通产品的 UPC 和 Artist,但是这些细节是无关紧要的,而对于另一种产品,我想要一组完全不同的结果。
SELECT CASE Product.type_id
WHEN 10 THEN (
SELECT
Product.product_id,
Product.type_id,
Product.product_name,
Product.UPC,
Product_Type.type,
CONCAT_WS(' ' , first_name, middle_name, last_name ) AS artistC
FROM Product, Product_Type, Product_ArtistAuthor
WHERE Product.type_id = Product_Type.type_id
AND Product.product_id = $pid
AND Product.artist_id = Product_ArtistAuthor.artist_id
)
ELSE (
SELECT
Product.product_id,
Product.type_id,
Product.product_name,
Product_Type.type
FROM Product, Product_Type
WHERE Product.type_id = Product_Type.type_id
AND Product.product_id = $pid
)
END
FROM Product
WHERE Product.product_id = $pid
我不知道我哪里错了
【问题讨论】:
-
把 SQL 放到 fiddle - sqlfiddle.com