怎么对 SQL 结果集排序,主要是因为查询出来的结果集没有索引列

我用的是mssql2000数据库,如下代码selectj.createcardidasid,j.cardnoascardnofrom(selecttop10l.creat... 我用的是mssql2000 数据库,如下代码
select j.createcardid as id ,j.cardno as cardno from
(select top 10 l.createcardid,l.cardno from ec_store_card_info l ) j
left join
(select top 5 l.createcardid,l.cardno from ec_store_card_info l ) k
on k.cardno = j.cardno
where k.cardno is null order by j.cardno

这样order by j.cardno 这字段不是在表里的,所以这个j.cardno索引相当于没用。如果表数据大,那查询出来就很慢,怎么解决 ??
展开
 我来答
CJavaer
2012-09-17 · TA获得超过300个赞
知道小有建树答主
回答量:174
采纳率:0%
帮助的人:225万
展开全部
你的sql其实取得就是6到10的内容。你试试在top10的集合做处理取出内容,免得在走表做链接。
没用过mssql,如果非要这么写的话,mssql里面应该有类似oracle的MINUS这样的函数吧,或者有没有类型with as()这样的临时表使用。
景联文科技
2024-06-11 广告
一、什么是数据标注?1. 数据标注定义数据标注是对未经处理的语音、图片、文本、视频等数据进行加工处理, 并转换为机器可识别信息的过程。原始数据一般通过数据采集获得, 随后的数据标注相当于对数据进行加工, 然后输送到人工智能算法和模型里完成调... 点击进入详情页
本回答由景联文科技提供
你好师姐
2012-09-18 · TA获得超过123个赞
知道小有建树答主
回答量:177
采纳率:0%
帮助的人:140万
展开全部
select j.createcardid as id ,j.cardno as cardno from
(select top 10 l.createcardid,l.cardno from ec_store_card_info l ) j
left join
(select top 5 l.createcardid,l.cardno from ec_store_card_info l ) k
on k.cardno = j.cardno
where k.cardno is null order by 2
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式