我试图获取数据的问题是 -
“我想知道受营销活动影响的商机何时与客户相关联。帐户可能有多个联系人
因此,如果任何联系人与活动(活动成员)相关联 - 请告诉我该(或那些)联系人连接到的帐户,以及是否有与该活动相关联的机会帐户,如果有与该帐户相关联的机会,则该机会是在联系人与活动相关联之后创建的”</p>
我想不通其中的逻辑。我是 SQL 新手。任何帮助将不胜感激。
我正在使用 SQL Server 2012
我有 5 个来自 SalesForce 数据库的相关表 –</p>
Account 表(PK ID、OpportunityID)、Opportunity 表(PK ID、AccountID)、Contact 表(PK ID、AccountID)、Campaign 表(PK ID、ContactID、ParentID)、CampaignMember 表(PK ID、ContactID、CampaignID)
此链接提供了 SalesForce 数据模型 http://www.salesforce.com/us/developer/docs/api/Content/sforce_api_erd_majors.htm
这是我想出的,但它不返回任何行。
SELECT O.CreatedDate OppCreatedDate
,o.Name as OpportunityName
,a.Name AccountName
,c.Name as ContactName
,ca.Name as CampaignName
,o.Amount_Software
,o.CreatedDate
FROM Opportunity o
INNER JOIN Account a on a.Id = o.AccountID
LEFT JOIN Contact c ON c.AccountId = a.Id
INNER JOIN CampaignMember cm ON cm.CampaignID = c.ID
INNER JOIN Campaign ca ON ca.ID = cm.CampaignID
LEFT JOIN Campaign ca2 ON ca2.ID = ca.ParentID
WHERE o.CreatedDate > cm.CreatedDate
ORDER BY AccountName DESC;
谢谢你。