MySql varchar型数字比较,加单引号与不加单引号的区别

时间:2024-03-27 08:30:08

测试数据库脚本与数据:


CREATE TABLE `tb_user` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键自增',
  `login_name` varchar(255) DEFAULT NULL COMMENT '帐号',
  `password` varchar(255) DEFAULT NULL COMMENT '登录密码',
  `user_name` varchar(255) DEFAULT NULL COMMENT '用户名',
  `add_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '添加时间',
  `age` varchar(10) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8;

/*Data for the table `tb_user` */

insert  into `tb_user`(`id`,`login_name`,`password`,`user_name`,`add_time`,`age`) values (1,'e','t','t','2016-09-09 15:38:41','2'),(2,'df','df','t','2016-09-09 15:38:45','4'),(3,'ss','df','sdf','2016-09-09 15:38:49','5'),(4,'cx','sdf','xcv','2016-09-09 15:38:53','21'),(5,'d','ff','dd','2017-07-08 12:26:23','25');
MySql varchar型数字比较,加单引号与不加单引号的区别

测试过程:
1)不带单引号查询
select * from tb_user where age >=5
MySql varchar型数字比较,加单引号与不加单引号的区别
2)带单引号查询
select * from tb_user where age >='5'
MySql varchar型数字比较,加单引号与不加单引号的区别


官方文档说明:
https://dev.mysql.com/doc/refman/5.7/en/comparison-operators.html

strings. Strings are automatically converted to numbers and numbers to strings as necessary.
MySql varchar型数字比较,加单引号与不加单引号的区别