返回多个子查询

时间:2014-11-01 00:45:32

标签: mysql

选择电子邮件,过期成员到期时间=(选择ifnull(电子邮件,电话)为“联系人”,其中有效期为> ='2008'且到期时间为< ='2009');

我返回了多个子查询。有什么帮助吗?

我想回答这个问题:

我们需要与2008年到期的会员取得联系,我们希望使用电子邮件作为主要联系方式;但是,如果没有电子邮件地址,我们想知道他们的电话号码。

1 个答案:

答案 0 :(得分:0)

在这种情况下使用in而不是=。

select email, expiration 
from member 
where expiration in (select ifnull(email, phone) as 'Contact' from member where expiration >= '2008' and expiration <='2009');

但这也行不通。因为您尝试将过期与电子邮件或电话进行比较。

正确的查询应该是:

select ifnull(email, phone) as 'Contact', expiration 
from member 
where expiration >= '2008' and expiration <='2009';