Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/244.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php MySQL:1起作用,但=0不起作用_Php_Mysql_Mysqli - Fatal编程技术网

Php MySQL:1起作用,但=0不起作用

Php MySQL:1起作用,但=0不起作用,php,mysql,mysqli,Php,Mysql,Mysqli,当我发送类似的查询时 SELECT id FROM private_messages WHERE to_id=1 AND opened=0 它不会返回任何东西 SELECT id FROM private_messages WHERE to_id=1 AND opened<>1 返回打开=0的所有结果。打开的列类型为枚举,默认值为1和0。问题是,为什么第一个查询不返回任何内容?既然opened是一个枚举,您应该写: SELECT id FROM private_messages

当我发送类似的查询时

SELECT id FROM private_messages WHERE to_id=1 AND opened=0
它不会返回任何东西

SELECT id FROM private_messages WHERE to_id=1 AND opened<>1
返回打开=0的所有结果。打开的列类型为枚举,默认值为1和0。问题是,为什么第一个查询不返回任何内容?

既然opened是一个枚举,您应该写:

SELECT id FROM private_messages WHERE to_id=1 AND opened='0'
枚举实际上只是一组可能的字符串。发件人:

枚举是一个字符串对象,其值从 在列中显式枚举的允许值 表创建时的规范

由于opened是一个枚举,您应该编写:

SELECT id FROM private_messages WHERE to_id=1 AND opened='0'
枚举实际上只是一组可能的字符串。发件人:

枚举是一个字符串对象,其值从 在列中显式枚举的允许值 表创建时的规范


在枚举字段中,指定为输入值的字符串将自动编码为数字。在可读查询和输出中,数字被转换回查询结果中相应的字符串

因此,您必须使用“0”而不是0


当您以这种方式使用query时,从私有消息WHERE to_id=1和opened='0'中选择id,您要求MySQL返回所有值,其中to to_id=1和opened的索引值为0,而不是字符串值。

在枚举字段中,指定为输入值的字符串将自动编码为数字。在可读查询和输出中,数字被转换回查询结果中相应的字符串

因此,您必须使用“0”而不是0


当您以这种方式使用query时,从私有消息中选择id,WHERE to_id=1,opened='0',您要求MySQL返回所有值,WHERE to_id=1,opened的索引值为0,而不是字符串值。

这是怎么回事:从私人消息中选择id到哪里,id=1,打开的是='0'?这是怎么回事:从私人消息中选择id到哪里,id=1,打开的是='0'?@biziclop-谢谢,刚刚添加了这一点。上一节特别相关。@PaulBellora你能创建聊天室并邀请我吗。我的代表不够高,无法创建我还有一个问题。@epic_语法生成一个新问题。@biziclop-谢谢,刚刚添加了这个问题。上的部分特别相关。@PaulBellora你能创建聊天室并邀请我吗。我的代表不够高,无法创建我还有1个问题。@epic\u语法生成一个新问题。