如何对一个全部由正整数构成的文本字段,按照数字的绝对大小进行排序?

shdfl 2001-12-21 05:09:16
例如,电话号码字段。

排序:select * from user order by telephone,conn,1

由于字段telephone的属性是文本(Text),若按照上面的方法,
只是比较首位数字的大小,
这样的结果是
7位的号码(如:7654321),将会被排在8位(如:21234567)的后面,

如何才能按照数字的绝对大小进行排序?(7位数比8位数小)
代码该怎么写?

唉,因为库结构不能再改动了,现在只能改库的调用代码。

哪位帮个忙,指点一下。
...全文
85 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
tripofdream 2001-12-21
  • 打赏
  • 举报
回复
Access:
select * from user order by cint(telephone)
shdfl 2001-12-21
  • 打赏
  • 举报
回复
把数据库的FIELD改成INT型,这个我也知道。

但问题是,数据库结构和字段属性没法再改了。
不是改不了,而是若要改结构或字段属性的话,
那么整个系统的代码,要改就太多了。

因为是在原来正常运行的基础上,增加一个新的数据检索。
而系统又不允许停下来做测试。

cpplus(百合),请帮着想想办法吧~~~:)
tripofdream 2001-12-21
  • 打赏
  • 举报
回复
试试
sql:
select * from [user] order by cast(telephone as int)
Access:
select * from user order by cint(int)
cpplus 2001-12-21
  • 打赏
  • 举报
回复
其实把数据库的FIELD改成INT型的不是很麻烦而且不影响现在的数据啊~

28,406

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧