MySQL中intvalue=’1’和intvalue=1的区别?
你需要使用intvalue=1。语句intvalue=’1’在MySQL内部转换为cast(‘1’ as int)。
首先,我们创建一个表 –
mysql> create table DemoTable1566
-> (
-> intvalue int
-> );
Query OK, 0 rows affected (0.64 sec)
使用insert命令在表中插入一些记录 –
mysql> insert into DemoTable1566 values(1);
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable1566 values(55);
Query OK, 1 row affected (0.08 sec)
mysql> insert into DemoTable1566 values(75);
Query OK, 1 row affected (0.32 sec)
mysql> insert into DemoTable1566 values(90);
Query OK, 1 row affected (0.19 sec)
使用select语句显示表中的所有记录 –
mysql> select * from DemoTable1566;
这会产生以下输出 –
+----------+
| intvalue |
+----------+
| 1 |
| 55 |
| 75 |
| 90 |
+----------+
4 rows in set (0.00 sec)
这是实现intvalue=1的查询 –
mysql> select * from DemoTable1566 where intvalue=1;
这会产生以下输出 –
+----------+
| intvalue |
+----------+
| 1 |
+----------+
1 row in set (0.00 sec)
这是intvalue=’1’的查询 –
mysql> select * from DemoTable1566 where intvalue='1';
这会产生以下输出 –
+----------+
| intvalue |
+----------+
| 1 |
+----------+
1 row in set (0.00 sec)
阅读更多:MySQL 教程