首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > Mysql >

MySQL查询最大值有关问题

2012-03-31 
MySQL查询最大值问题比如我有一张数据表:questionidnamedate。。。1张三201203230159560015112张三2012032301

MySQL查询最大值问题
比如我有一张数据表:question
id name date 。。。
1 张三 20120323015956001511
2 张三 20120323015956001511
3 张三 20120323015956001511
......

25 李四 20120323015956001511

id是字符串型(varchar),从1到25;
日期相同,这个不用考虑,只是一个查询字段;
为什么用下面那个查询语句只能查询出到最大值是9呢?
后面的10到25查询不到?
求高人指点?

SQL code
select max(id) as maxid from questionWHERE date='20120323015956001511' 


[解决办法]
字符串类型大小比较是先比较首字符,然后依次往后的,9>8>...所以就是9了
[解决办法]
id是字符串型(varchar)是设计错误。
[解决办法]
假设只有2位数
update tt set f1=right(concat('00',f1),2)
[解决办法]
select max(id+0) as maxid 
from 
question
WHERE 
date='20120323015956001511'
[解决办法]
探讨
select max(id+0) as maxid
from
question
WHERE
date='20120323015956001511'

热点排行