SQL查询问题,大家帮忙
先描述当前状况:
有两个表,分别是:
t_mailbox t_receiver
-------------------- -----------------------------
mailid receiverid
content mailid
sender receivername
等 等
表t_mailbox和t_receiver是一对多的关系,如一封邮件对应多个收件人
问题阐述:
现在有一个二次查询,如,有一封邮件发给了张三和李四,现在用关键字张三去搜索邮件信息,按道理来说只能搜出一条记录,该怎么写sql
注意:二次查询的关键字只要满足这两个表中的任何字段的内容都可以搜索出来!!
推荐阅读
select * from t_receiver where receivername like %张三%
select * from t_receiver where charindex(张三,receivername) > 1
select * from t_mailbox where mailid in (select mailid from t_receiver where receivername=张三)
你是怎么查的?试试.
select * from t_mailbox where mailid in (select mailid from t_receiver where receivername=张三)
如果要显示两个表中的内容,就用:
select *
from t_mailbox a inner join t_receiver b on a.mailid=b.mailid
where b.receivername=张三
select * from t_mailbox ,t_receiver where t_mailbox.mailid=t_receiver.mailid and receivername=张三


讨论区