免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 3336 | 回复: 12
打印 上一主题 下一主题

如何才能在varchar數據類型字段中查詢最大值,你是否也曾試過這樣的用法??? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-11-29 16:59 |只看该作者 |倒序浏览
例如表tblA中字段fieldA有如下的兩個值:EC1000和EC999。如果用 select max(fieldA) from tblA
查詢出來的結果就是 EC999,而實際上我想要的是EC1000,因為EC後面的1000比999大!!我要如何查詢才能達到這個目的?????

论坛徽章:
1
数据库技术版块每日发帖之星
日期:2016-03-12 06:20:00
2 [报告]
发表于 2006-11-29 17:13 |只看该作者
select max(substring(fieldA,3)) from tableA

我还是喜欢分2个列,以后可以方便很多
仅供参考

论坛徽章:
0
3 [报告]
发表于 2006-11-29 17:32 |只看该作者

回复 2楼 qlks 的帖子

不行啊,我想只有將後面的數字字符轉換成數字才能實現這個目的吧。
我原先也有過打算分列處理,但是由於程序本身的要求那樣處理也很麻煩。

论坛徽章:
0
4 [报告]
发表于 2006-11-30 11:45 |只看该作者

回复 3楼 sunvor 的帖子

呵呵,不知哪位大俠能拔刀相助小弟一下啊??

论坛徽章:
0
5 [报告]
发表于 2006-11-30 13:13 |只看该作者
qlks不是已经给你解决办法了吗

论坛徽章:
0
6 [报告]
发表于 2006-11-30 21:33 |只看该作者

回复 5楼 yejr 的帖子

我試了,那樣的查詢出來的結果還是999,而不是1000。

论坛徽章:
0
7 [报告]
发表于 2006-11-30 21:41 |只看该作者

  1. select max(substring(fieldA,3)+0) from tableA
复制代码

论坛徽章:
0
8 [报告]
发表于 2006-12-01 08:39 |只看该作者
Namelessxp 真乃大蝦也。

论坛徽章:
1
2015-2016NBA季后赛纪念章
日期:2016-06-28 17:44:17
9 [报告]
发表于 2006-12-01 09:33 |只看该作者
是2楼的早给你解决了的.真是的,别人给你回的帖子都不好好看,

论坛徽章:
0
10 [报告]
发表于 2006-12-01 15:12 |只看该作者
用cast()函数转换类型也可以
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP