单纯的字符串比较结果不精确. select * from 表明 where times> '2088/12/8 10:02:40' (×) 转换函数如下(数据库为varchar): select * from h_hotelcontext where now() between STR_TO_DATE(Start_time,'%Y-%m-%d %H:%i:%s') and STR_TO_DATE(End_time,'%Y-%m-%d %H:%i:%s'); select max(addtime…
在用MySQL查询数据的时候,遇到了一个奇怪的问题.用一个varchar类型的字符串str,作为条件与0比较时,会查str不为0的数据. 比如:SELECT id, idnumber from hr_student where idnumber = 0:会查到idnumber 为'0','身份证',''等数据.不符合查询的条件啊. 原因如下: MySql在比较varchar类型和0的时候,会把varchar类型转换成数字0. 所以用idnumber =0作为条件时,会把以0开头的字符串和普通字符…
Mysql一个非常有用的内置函数 今天碰到要把MySQL数据库中的varchar转换成date类型进行时间的比较和查询.在网上找了找,发现MySQL也跟其他数据库一样有自己内置的转换函数:str_to_date(params,convert). 例子: 比如数据库中的varchar为2013-08-05 10:10:10 00:00+8:00 转换YYYY-mm-dd:str_to_date('2013-08-05 10:10:10 00:00+8:00','%Y-%m-%d ') 转换YYYY…
MySQL中怎么对varchar类型排序问题 在mysql默认order by 只对数字与日期类型可以排序,但对于varchar字符型类型排序好像没有用了,下面我来给各位同学介绍varchar类型排序问题如何解决. 今天在对国家电话号码表进行排序的时候发现了一个有趣的问题,我想让isdcode字段按照由小到大的顺序排序,于是乎我是这样写的  代码如下 复制代码 SELECT * FROM gb_country_isdcode ORDER BY isdcode asc 结果如下,发现竟然不是我想要…
Mysql order by 排序 varchar 类型数据 varchar 类型字段排序,  会將数字当成字符串来处理.  排序规则一般是从左到右一位位来比较. +0之后 就转化成INT 类型排序 数据库表中 某个字段类型为varchar 想用sql实现排序 超找出这个字段topN的值. 想到 用order by desc 例如sql: SELECT *  FROM testTable where fcode=40006 and fmotype='bu100101' order by fval…
MySQL数据库提供针对字符串存储的一种特殊数据类型:集合类型SET,这种数据类型可以给予我们更多提高性能.降低存储容量和降低程序代码理解的技巧,前面介绍了首先介绍了四种数据类型的特性总结,其后又分别介绍了布尔类型BOOL或称布尔类型BOOLEAN.枚举类型ENUM,本文我们详细介绍集合类型set测试过程与总结,加深对mysql数据库集合类型set的理解记忆. n  集合类型 SET a).数据库表mysqlops_set结构 执行创建数据库表mysqlops_set的语句: root@loca…
Mysql数据库表排序规则不一致导致联表查询,索引不起作用问题 表更描述: 将mysql数据库中的worktask表添加ishaspic字段. 具体操作:(1)数据库worktask表新添是否有图片字段ishaspic:新添字段时,报错 [SQL] alter table WorkTask add ishaspic int(10) Null;[Err] 1034 - Incorrect key file for table 'WorkTask'; try to repair it 解决方案:新建…
mysql数据库,当数据类型是float时,查询居然查询不出数据来,类似如下: 以后mysql数据库不用float类型,而double类型可以查得出来.…
今天做项目的时候,遇到个小小的问题,在数据库中查询的时候,要用String类型的ID进行一下排序!(注:ID字段为 varchar 类型) 解决的方法: 如: SELECT * FROM  Student WHERE 1 = 1 ORDER BY -ID DESC 或者: SELECT * FROM  Student WHERE 1 = 1 ORDER BY (ID + 1) mysql时间格式化,按时间段查询MYSQL语句   2011-04-15 09:01:08|  分类: MySQL |…
在mysql默认order by 只对数字与日期类型可以排序,但对于varchar字符型类型排序好像没有用了,下面我来给各位同学介绍varchar类型排序问题如何解决.   今天在对国家电话号码表进行排序的时候发现了一个有趣的问题,我想让isdcode字段按照由小到大的顺序排序,于是乎我是这样写的  代码如下 复制代码 SELECT * FROM gb_country_isdcode ORDER BY isdcode asc 结果如下,发现竟然不是我想要的结果,asc排序是对的呀,于是乎我找呀找…