想要使用IF THEN

时间:2009-12-18 23:50:34

标签: sql

我需要对活跃客户的所有联系人记录进行身份识别/标记,即使只有一个客户的联系人记录被标记为ACTIVE

具体来说,我想从我的GoldMine数据库中提取所有公司的所有联系人记录,其中任何一个公司的联系人记录都将公司的帐户状态标记为ACTIVE CLIENT。然后我计划获取SQL输出,创建一个组,从该列表中获取所有联系人记录,并将公司的帐户状态字段从blank or null替换为ACTIVE CLIENT

2 个答案:

答案 0 :(得分:1)

好的,听起来你有一个活跃的客户(公司)列表,此外你还有一个特定客户(公司)的所有联系人(人)列表。

您似乎想要为特定客户(公司)接收所有联系人(人员),并为该特定客户(公司)的所有联系人(人员)更新帐户状态列为“活动客户” - 所以该客户(公司)的至少一个联系人(人员)的帐户状态列为“活动客户”。

如果这些是正确的要求,那么你可以这样做:

UPDATE Contacts

SET Account_Status = 'ACTIVE CLIENT'

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

答案 1 :(得分: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中运行。”