Mysql 返回了多个子查询

Mysql 返回了多个子查询,mysql,Mysql,选择email,expiration from member,其中expiration=选择ifnullemail,电话作为'Contact'从成员处发送,其中expiration>='2008'和expiration在此类情况下使用in代替= select email, expiration from member where expiration in (select ifnull(email, phone) as 'Contact' from member where expirati

选择email,expiration from member,其中expiration=选择ifnullemail,电话作为'Contact'从成员处发送,其中expiration>='2008'和expiration在此类情况下使用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';

为什么有子查询呢?选择ifnullemail和手机作为会员的“联系人”有什么问题,过期时间>='2008',过期时间工作正常,谢谢@kba,把它作为答案有什么不对?@Rahul我想我误解了这个问题。这似乎太明显了。我只是复制了他自己的子查询。@kba,现在看,你错过了+15次重复: