【发布时间】:2014-09-11 21:53:39
【问题描述】:
我有这些栏目:
ID, Last_Name, First, Email, Email type
电子邮件类型为 PERS 和 WORK 一个人可以同时拥有 PERS 和 WORK 电子邮件地址。 工作地址在电子邮件地址中包含 Last_Name。
例子:
14569, Smith, Joe, money133@aol.com, PERS
14569, Smith, Joe, JSmith142@company.com, WORK
59876, Conway, Mary, MConway131@company.com, PERS
59876, Conway, Mary, MConway131@company.com, WORK
79654, Far, John, JohnFar@company.com, PERS
79654, Far, John, JFar241@company.com, WORK
这是我想要做的:
我正在寻找在个人电子邮件字段中列出工作电子邮件的人。
电子邮件字段可能包含工作或个人电子邮件地址。
如果电子邮件类型 = PERS 并且它包含“my.company.com”,那么我想查看 PERS 电子邮件地址,看看它是否不包含 Last_Name。
结果应该是不正确的个人电子邮件和正确的工作电子邮件:
79654, Far, John, JohnFar@company.com, PERS
79654, Far, John, JFar241@company.com, WORK
SELECT
ID, pp.Last_Name, pp.First, em.Email, em.Email_type
from Somewhere pp
join emailarea em
on id.somewhere_ID = em.email_ID
where
(em.email_type = 'PERS' or em.email_type = 'WORK')
and
(em.email_type = 'PERS' and em.email like '%my.company.com')
and
em.email not like Last_Name
如何比较 em.email 和 Last_Name? 另外,因为我说它必须是 PERS,所以它不会显示任何工作电子邮件地址。我也需要解决这个问题的帮助。 结果是:
14569, Smith, Joe, money133@aol.com, PERS
59876, Conway, Mary, MConway131@company.com, PERS
79654, Far, John, JohnFar@company.com, PERS
【问题讨论】:
-
您使用的是哪个 DBMS?后格雷斯?甲骨文?
-
既然工作邮件应该包含姓氏,那它不应该看看那个不包含姓氏的邮件,而不是个人邮件吗?