在使用MySQL查询时,常常会遇到一些问题,比如varchar类型的数据没有带引号导致查询失败。这篇文章将介绍如何解决这个问题。
SELECT * FROM mytable WHERE name = JohnERROR 1054 (42S22): Unknown column 'John' in 'where clause'
上面的错误提示是因为查询语句中的name字段的值没有加上引号。varchar类型的数据必须要用单引号或双引号括起来,否则MySQL会将其解析为一个未知的列名。
SELECT * FROM mytable WHERE name = 'John'Query OK, 1 row affected (0.00 sec)
通过在name字段的值前后加上单引号或双引号,MySQL能够正确地解析查询语句,查询结果也能正确返回。
总之,在使用MySQL查询varchar类型时,请务必记得给字段的值加上引号。