SQL server 关联查询问题
有两张表,A表和B表,一对多的关系
A.id=B.aId
A.date 和 b.date 比较,如果和A关联的每一个B中的b.date都大于A.date ,那么就把A表中对应的数据查出来
请问应该怎么写SQL语句啊
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
有两张表,A表和B表,一对多的关系
A.id=B.aId
A.date 和 b.date 比较,如果和A关联的每一个B中的b.date都大于A.date ,那么就把A表中对应的数据查出来
请问应该怎么写SQL语句啊
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(9)
上面是A多,B1
这里是是A1,B多,问题就出来了
ToBeHJH 做了下测试,发现结果好像是一样的,只是你这种写法,还真是有点怪,按理不会这么写。自己看!
感觉你的有问题吧?注册个帐号要1个小时才能回复。。。不用给弯路人家走。。select * from a where exists (select 1 from b where a.id=b.id and b.date>a.date)
回复
原题“如果和A关联的每一个B中的b.date都大于A.date...”你仔细去看人家的需求
回复
看楼下,A多,B1的时候,你的min有什么用?
回复
麻烦您先审题,仔细研究人家的需求,再来作答,好吗?
select a.* from a where a.date <(select min(date) from b where b.id = a.id)
好像表说反了………意思明白就行了
找到A最大的data,拿到一个之后作为一个过滤条件,去B里面拿数据