求教个SQL语句写法,关于去top10的选择
求教个SQL语句写法,关于去top10我想在A库中的table1表中取出改表中的A列数值最大的前10条数据,但是第10条和第11、12条可能数值相等,都要取出,这条SQL...
求教个SQL语句写法,关于去top10
我想在A库中的table1表中取出改表中的A列数值最大的前10条数据,但是第10条和第11、12条可能数值相等,都要取出,这条SQL语句该如何写呢。
请高手不吝赐教。 展开
我想在A库中的table1表中取出改表中的A列数值最大的前10条数据,但是第10条和第11、12条可能数值相等,都要取出,这条SQL语句该如何写呢。
请高手不吝赐教。 展开
展开全部
select top 10 A from table order by A desc
将A列从大到小排序,取出前十行数据
select * from table where A in (
select top 10 A from table order by A desc
)
将所有A列数值等于取出最大十个数值的数据全部查找出来
select top 10 A from (select distinct A from table )T order by A desc
将A列数值去除重复值,然后从大到小排序,取出不重复的前十行数据
select * from table where A in (
select top 10 A from (select distinct A from table )T order by A desc
)
将所有A列数值等于取出最大十个数值的数据全部查找出来
将A列从大到小排序,取出前十行数据
select * from table where A in (
select top 10 A from table order by A desc
)
将所有A列数值等于取出最大十个数值的数据全部查找出来
select top 10 A from (select distinct A from table )T order by A desc
将A列数值去除重复值,然后从大到小排序,取出不重复的前十行数据
select * from table where A in (
select top 10 A from (select distinct A from table )T order by A desc
)
将所有A列数值等于取出最大十个数值的数据全部查找出来
追问
select * from table where A in (
select top 10 A from table order by A desc
)
用查询分析器执行提示报错:当没有用EXISTS引入子查询时,在选择列表中只能指定一个表达式。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
换一个角度去理解问题可以吗?
你查找的排序好的最大值,就把它当做id处理好了,
查找方式就是与大于或等于top 10 里面的数值都找出
select tb_score.score from tb_score where //查询分数,从表tb_score
tb_score.score //条件--查询的分数不在某个区域里面
not in(
select tb_score.score from tb_score where //查询分数,从某个区域中
tb_score.score<all
(select top 10 tb_score.score from tb_score //取前10个分数进行查询
order by score desc)
)
order by tb_score.score desc
步骤就是:先取出前10个分数(top 10),然后得出小于前10的有哪些(<all),最后取得上一步相反的数(not in all)
你查找的排序好的最大值,就把它当做id处理好了,
查找方式就是与大于或等于top 10 里面的数值都找出
select tb_score.score from tb_score where //查询分数,从表tb_score
tb_score.score //条件--查询的分数不在某个区域里面
not in(
select tb_score.score from tb_score where //查询分数,从某个区域中
tb_score.score<all
(select top 10 tb_score.score from tb_score //取前10个分数进行查询
order by score desc)
)
order by tb_score.score desc
步骤就是:先取出前10个分数(top 10),然后得出小于前10的有哪些(<all),最后取得上一步相反的数(not in all)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
楼主说的应该是SQL Server的写法吧?
SQL Server TOP子句提供了ties关键字可以实现你的需要
SELECT TOP 10 WITH TIES * FROM table1 ORDER BY A DESC
SQL Server TOP子句提供了ties关键字可以实现你的需要
SELECT TOP 10 WITH TIES * FROM table1 ORDER BY A DESC
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
select * from table where A in (select top 10 A from table order by A)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-04-19
展开全部
select top 10 a from table order by a desc
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询