SQL Server 2005:如果另一列为null或包含一个单词,请选择一列
-
10-10-2019 - |
题
我正在尝试使用投标书来创建报告。我希望其中一列提供电子邮件地址。我有两个包含电子邮件地址的表。一个包含客户开始与我们开展业务时提供的原始电子邮件地址。另一表包含他们在网站上提交的可能更新的(替代)电子邮件地址。
有时,原始电子邮件地址使用我们的公司域,因为我的公司用来为没有地址的客户创建电子邮件。
我需要构建一个可以评估原始电子邮件地址的查询。它需要做两件事:
- 如果原始电子邮件地址为空白,则需要包括替代电子邮件地址。
- 如果原始电子邮件地址包含我们的域(customer@mydomain.com),则需要包括替代电子邮件地址。
- 如果上面的两个项目不是这种情况,则需要吐出原始的电子邮件地址。
查询需要吐出此评估是一个名为电子邮件的单列。
可以做到吗?我应该看竞标吗?如果是这样,什么方向?
在此先感谢您的帮助。
解决方案
易于使用案例。就像是:
SELECT whatever1, whatever2, CASE
WHEN originalemail IS NULL THEN alternateemail
WHEN originalemail like '%domainname%' THEN alternateemail
ELSE originalemail
END AS Email
FROM...
其他提示
SELECT
CASE t1.orgEmail
WHEN NULL THEN t2.altEmail
WHEN LIKE '%domainname%' THEN t2.altEmail
ELSE
t1.orgEmail
END AS email
FROM
table1 AS t1, Table2 as t2
不隶属于 StackOverflow