社区
MS-SQL Server
帖子详情
急!急!求varchar类型的字段的最大值
huangsizen
2003-12-25 10:59:58
字段名为no,类型为varchar.
如有数据如下: 100
1001
888
10020
现在我的问题是:求出该字段的最大值,如用“select max(no) from 表名”进行查询,则得到结果为888,但我想得到的结果是10020.
有结果马上结帖。
...全文
291
13
打赏
收藏
急!急!求varchar类型的字段的最大值
字段名为no,类型为varchar. 如有数据如下: 100 1001 888 10020 现在我的问题是:求出该字段的最大值,如用“select max(no) from 表名”进行查询,则得到结果为888,但我想得到的结果是10020. 有结果马上结帖。
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
huangsizen
2003-12-25
打赏
举报
回复
好,马上结帖
qiaolin53
2003-12-25
打赏
举报
回复
varchar是字符型的,你对它max,得到的结果是按照字符的ANSI码进行比较的
例如
888和A比较,肯定是A>888
必须转换成数字型的再比较或求max
huangsizen
2003-12-25
打赏
举报
回复
victorycyz():你写的第一个可以,但第二个不可以,可不可以再写一个过来?
qiaolin53
2003-12-25
打赏
举报
回复
select max(convert(integer,字段)) from 表
jingxijun
2003-12-25
打赏
举报
回复
中海的方法好
改进一下 中海的:
select ltrim(rtrim(max(right(replicate(' ',1000)+ltrim(rtrim([no])),1000)))) from tablename
wuqiuzhi
2003-12-25
打赏
举报
回复
真是衰,没有看明白题意,呵呵!
我想是不是可以先选出里面长度最大的,保证是数字同时第一个是非0,然后再比较首字符最大的。
wuqiuzhi
2003-12-25
打赏
举报
回复
首先varchar的最大长度是8000,
另外:select max(datalen(no)) from yourtable
victorycyz
2003-12-25
打赏
举报
回复
避免溢出:
select max(right(replicate(' ',1000)+[no],1000)) from tablename
jingxijun
2003-12-25
打赏
举报
回复
select max(cast(no as DECIMAL)) 行不?
select max(cast(no as MONEY))
--MONEY介于 – 922,337,203,685,477.5808 到 922,337,203,685,477.5807 之间的符号整数。
zjcxc
元老
2003-12-25
打赏
举报
回复
select max(cast(no) as decimal(38,0))) from 表
victorycyz
2003-12-25
打赏
举报
回复
select max(cast([no] as bigint)) from tablename
huangsizen
2003-12-25
打赏
举报
回复
不行,如有数据200312250001时,转换时发生错误,"varchar值'200312250001'的转换溢出了int列
jingxijun
2003-12-25
打赏
举报
回复
select max(cast(no as int)) from 表名
mysql
求
varchar
类型
的
最大值
(或按照
varchar
类型
排序)
工作中为了方便后续扩展,建表时将数字
类型
定义为
varchar
类型
进行存储,但是在排序时会乱序,这里是因为mysql默认order by 只对数字与日期
类型
可以排序 演示: 一、数据初始化 CREATE TABLE `test
varchar
max` ( `age`
varchar
(32) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8;...
MySQL中
varchar
类型
字段
最大长度是多少
背景 字节和字符的区分 为什么是
varchar
(255)而不是(256)
varchar
字段
最大值
是多少 latin1字符集编码下 utf8字符集编码下 utf8mb4字符集编码下 总结 背景 你是否知道MySQL中的
varchar
字段
类型
最大能够存储多少数据?它的最大长度是多少?为什么有时候定义一个
varchar
(10)的
字段
可以存储10个汉字,但是不能存储超过10个长度的字母呢?为什么有时候我定义的
varchar
(10)的
字段
又存储不了10个汉字呢?为什么很多地方在定义va.
varchar
类型
字段
为什么经常定义成255
也就是说
varchar
(20)和
varchar
(255)相应的索引长度分别为20*3(utf-8)(+2+1),255*3(utf-8)(+2+1)。但实际上,
varchar
(255)并不是最优的字符定义长度,究竟定成多少,还是要根据实际需
求
来决定,例如这个
字段
我就不需要创建索引,定义超过255,是可以的,只能说255是常规情况下较少出错的一个值。2、少申请一个字节,记录字符创长度,一个8位的tinyint,可以表示的无符号数值的范围是,0-255,如果长度超过了255,需要在申请个字节。
oracle
varchar
2
字段
长度不够问题
目录 1.报错误 2.上网搜了一下字符计算 3.调整oracle
字段
,改至
varchar
2(500),保存成功 今天用户反馈bug,数据无法保存。于是把数据拉到本地代码测试跑一遍。可以保存成功。 跑到linux上tail -f,由于有3台节点,只能一台台看,总算拉到日志。 1.报错误 Caused by: java.sql.SQLException: ORA-12899: 列 "GAMC_DCS"."TT_SALE_ORDER_OCR"."CUSTOMER_ADRESS_OCR" 的值太大
关于MySQL
varchar
类型
最大值
,原来一直都理解错了
写在前面关于MySQL
varchar
字段
类型
的
最大值
计算,也许我们一直都理解错误了,本文从问题出发,经实践验证得出一些实用经验,希望对大家的开发工作有些帮助~背景描述最近同事在做技术方...
MS-SQL Server
34,876
社区成员
254,635
社区内容
发帖
与我相关
我的任务
MS-SQL Server
MS-SQL Server相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章