MySql查询无法正常工作

时间:2013-09-17 12:40:59

标签: mysql database

我正在尝试查询数据库以仅选择show = 0

的记录

这是我的查询,但它为show column

返回0和1
SELECT * FROM menu WHERE 'SHOW' = 0;

表格结构:

Table: menu
Columns:
  id    int(2) AI PK
  url   text
  name  text
  title text
  show  int(1)

表中的数据

| id |     url     | name | title | show |
------------------------------------------
| 1  | /index.php  | Home | Home  | 0    |
| 2  | /index2.php | Home | Home2 | 1    |

2 个答案:

答案 0 :(得分:6)

您不需要单引号。如果您使用任何引号,请使用反引号:

SELECT * FROM menu WHERE `SHOW` = 0;

问题是'SHOW'是字符串,而不是列名。当它与整数(0)进行比较时,它将被转换为整数。由于第一个字符是字母,因此转化结果为0。 。 。条件是真的。

答案 1 :(得分:4)

您不得使用此类报价。而不是,使用:

SELECT * FROM menu WHERE `SHOW` = 0;