sql 查询 WHERE 是否等于或为空

sql query WHERE equal or empty

在这种情况下,执行 sql 查询的正确方法是什么。例如:唯一的问题是有时他们可能没有 select 间卧室,所以我们需要拉起所有卧室,有时我们只需要拉起 3 间卧室。所以卧室有时是空的。

$bedroom = $_REQUEST['bedroom'];

SELECT * FROM apartments WHERE bedrooms = '$bedroom'
SELECT * FROM apartments WHERE ('$bedroom' = '' OR bedrooms = '$bedroom')

请注意,您也不应该将变量直接替换到查询中,您应该使用带参数的准备好的语句。参见 How can I prevent SQL injection in PHP?。所以它实际上应该是:

SELECT * FROM apartments WHERE ('$bedroom' = ? OR bedrooms = ?)