2016-08-18 152 views
0

我想給表中的值客戶設置狀態=「A」在一個個人上SQL Server更新聲明

如何查詢哪些表的mastersales與表Customer相關?

屬性和值MasterSales

例公司:ABC公司(MS001)

mastersales : ms001 (primarykey) 
Customer : cu0112, cu113,cu114,cu116,cu117 

mastersales : ms002 (primarykey) 
Customer : cu0115 

,所以我想更新顧客設置狀態= 'A',其中客戶= mastersales ms001 (cu0112, cu113,cu114,cu116,cu117)

+1

你可以提供兩個表的完整模式嗎? –

回答

-1
update tablename set status = 'A' where customer in (select customer from tablename where mastersales =ms001); 
+0

@downvoter需要說明嗎? –

+1

我不確定它爲什麼是DV,但是在多重結果集的情況下,customer =(select)在我看來是錯誤的 – TheGameiswar

0

試試這個:

UPDATE c 
    SET status = 'A' 
    FROM Customer c 
    INNER JOIN Mastersales m ON c.customer = m.customer 
    WHERE m.mastersales = 'ms001';