2012-01-25 82 views
1

我有以下查詢:CASE與AS查詢

SELECT * 
FROM Product 
ORDER BY (SELECT CASE 
        (SELECT MIN(date) FROM SomethingElse WHERE productId = Product.id) AS here 
       WHEN NULL 
       THEN 0 
       ELSE here 
     ) DESC 

然而,如情形不起作用。我需要一種方法將值保存在變量中並再次使用它。

+0

AS不保存任何值,其唯一的別名 – triclosan

回答

4

所以你正在試圖CASE when expression IS NULL THEN 0 ELSE expression END

在這種情況下,你可以只使用COALESCE(expression, 0)