2009-12-18 55 views
2

我需要標識我們活動客戶端的所有聯繫人記錄,即使只有一個的客戶端聯繫人記錄被標記爲ACTIVE想要使用IF THEN

具體來說,我想拉在其中任何一個公司的聯繫人記錄已經公司帳戶狀態標記爲ACTIVE CLIENT我的GoldMine數據庫中所有公司的所有聯繫人記錄。然後我計劃採用SQL輸出,創建一個組,從該列表中獲取所有聯繫人記錄,並將公司的帳戶狀態字段從blank or null更換爲ACTIVE CLIENT

+0

你能給你的表結構的詳細信息?什麼味道的SQL? – Blorgbeard 2009-12-18 23:56:38

回答

0

你是說你想要的東西等於這樣的東西?

UPDATE Company 
SET active = 1 
WHERE CompanyID IN (
    SELECT 
     Client_CompanyID 
    FROM 
     Contacts   -- or do you mean clients? 
    WHERE 
     IsActive = 1 
) 

如果不是,請讓我們知道除此之外您想要什麼。

而且,拜託,請不要說「而且這必須在MySQL 3.x或4.x中工作。」

1

好的,這聽起來像你有一個活躍的客戶(公司)列表,此外,你有一個特定客戶(公司)的所有聯繫人(人)列表。

您似乎想要爲特定客戶端(公司)獲取所有聯繫人(人員),並將該客戶(公司)的所有聯繫人(人員)的帳戶狀態列更新爲「活動客戶端」只要該客戶(公司)的聯繫人(人員)的至少一個的帳戶狀態列爲「活動客戶端」。

如果這些都是正確的要求,那麼你可以這樣做:

UPDATE Contacts 

SET Account_Status = 'ACTIVE CLIENT' 

WHERE Client_ID IN (SELECT Client_ID 
    FROM Contacts 
    WHERE Account_Status = 'ACTIVE CLIENT')