2012-07-18 43 views

回答

0

T RY:

UPDATE 
    TRANSACTION 
SET 
    points = 0 
WHERE 
    TransactionID IN (
     SELECT 
      TransactionID 
     FROM 
      trans_products 
     GROUP BY 
      TransactionID 
     HAVING 
      COUNT(*) = 1 
    ) 

編輯:每添加的ProductID需要你comment的,你不能有HAVING條款後WHERE。這是你需要的:

UPDATE 
    TRANSACTION 
SET 
    points = 0 
WHERE 
    TransactionID IN (
     SELECT 
      TransactionID 
     FROM 
      trans_products 
     WHERE 
      ProductID = '192' 
     GROUP BY 
      TransactionID 
     HAVING 
      COUNT(*) = 1 
    ) 
+0

是的,這是我需要的,謝謝你;此外,在trans_products有產品ID(交易可以有幾種產品),查詢應包括剛纔的ProductID = '192': – nour 2012-07-19 07:37:11

+0

在該查詢的問題:PDATE 交易 SET 點= 0 WHERE 的TransactionID IN( 選擇 的TransactionID FROM trans_products GROUP BY 的TransactionID HAVING COUNT(*)= 1 AND的ProductID = '192' ),在GROUP BY TransactionID的不是所有的產品都出現這樣我就可以相應地過濾 – nour 2012-07-19 07:38:25