sql server大数据中查询一条如何提高效率?

例如:一个表中有1000万条数据,主键编号格式为"20140306-0001",如何查询出记录中的最大编号?要效率高的.... 例如:一个表中有1000万条数据, 主键编号格式为 "20140306-0001", 如何查询出记录中的最大编号?要效率高的. 展开
 我来答
斯内科Snake
2014-03-06 · TA获得超过523个赞
知道小有建树答主
回答量:707
采纳率:50%
帮助的人:236万
展开全部
你最好在主键上面建立索引。
select max(SerialNo) from A
追问
MAX是不行的   20140306-9999和20130306-10000两个值  max取的是9999, 而我要得到的应该是10000
追答
你是年月日 加 编号?
可以分割字符串:
分割成日期 和数字 2个部分
select top 1 * from A
order by substring(SerialNo,1,8) desc,cast(substring(SerialNo,10,len(SerialNo)-9) as int) desc

如果要查询每天的最大编号 尝试这样
select substring(SerialNo,1,8) as '日期',max(cast(substring(SerialNo,10,len(SerialNo)-9) as int)) as '当天最大流水号' from A group by substring(SerialNo,1,8)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式