sql语句中如何用 EXISTS 引入子查询?没有exists引入子查询时怎样实现子查询?
4个回答
展开全部
比如查询某个表中相同ID中登记时间最大的记录:
select * from bb t where exists (selec * form bb where id=t.id and 登记时间<t.登记时间)
如果不用exists ,可以如下方式写:
select a.* from bb a,(select id,max(登记时间) as 登记时间 from bb group by id) b
where a.id=b.id and a.登记时间=b.登记时间
select * from bb t where exists (selec * form bb where id=t.id and 登记时间<t.登记时间)
如果不用exists ,可以如下方式写:
select a.* from bb a,(select id,max(登记时间) as 登记时间 from bb group by id) b
where a.id=b.id and a.登记时间=b.登记时间
展开全部
(SQL语句) exists (语句),如果没有exists,还可用where ,join , not ,in 等等,SQL是很丰富的,这个要自己平常多去学习,具体用法也要多用才能掌握其中的奥妙。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
PublishDate 是一个字段
(SELECT TOP 1 * FROM articles WHERE SysCategory='2' ORDER BY PublishDate DESC) 是多个字段
一个字段和多个字段无法比较的.
要把
(SELECT TOP 1 * FROM articles WHERE SysCategory='2' ORDER BY PublishDate DESC)
改成
(SELECT TOP 1 PublishDate FROM articles WHERE SysCategory='2' ORDER BY PublishDate DESC)
(SELECT TOP 1 * FROM articles WHERE SysCategory='2' ORDER BY PublishDate DESC) 是多个字段
一个字段和多个字段无法比较的.
要把
(SELECT TOP 1 * FROM articles WHERE SysCategory='2' ORDER BY PublishDate DESC)
改成
(SELECT TOP 1 PublishDate FROM articles WHERE SysCategory='2' ORDER BY PublishDate DESC)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我也想知道的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询