条件不工作请指导我如何获得正确的数据
condition is not working please guide me how to get proper data
SELECT *
FROM `tbl_property`
WHERE
`sublocality` LIKE '%dwarka%' OR
`sublocality` LIKE '%delhi%' OR
`property_type` LIKE '%1%' OR
`property_type` LIKE '%2%' AND
`status` = 1 AND
`property_category` = 1
这是我的查询,但条件不工作请指导我如何使用此类 sql 查询
获取正确的数据
可能您需要在查询中添加括号以对 OR/AND 条件进行分组:
SELECT *
FROM `tbl_property`
WHERE
(
`sublocality` LIKE '%dwarka%' OR
`sublocality` LIKE '%delhi%' OR
`property_type` LIKE '%1%' OR
`property_type` LIKE '%2%'
) AND
`status` = 1 AND
`property_category` = 1
首先,我认为你应该在你的问题中描述你想要的结果是什么样子的,你想查询什么,因为现在还不清楚。
其次,非文本搜索不应该使用LIKE
,而是使用等号运算符=
。
第三,您可能需要大括号 ( and )
来对部分查询进行分组,因为您在一个查询中使用 OR 和 AND,它们会混淆。
所以,我会试着举个例子。假设你想找到带有 sublocality = 'delhi'
和 属性 id 1
的属性,你应该写:
SELECT * FROM `tbl_property` WHERE `sublocality` LIKE 'delhi' AND `property_type` = 1;
现在,如果你想获得 属性 1,在 delhi 和 dwarka sublocalities,你可以写:
SELECT * FROM `tbl_property` WHERE (`sublocality` LIKE 'delhi' OR `sublocality` LIKE 'dwarka') AND `property_type` = 1;
这样,您可以确保 part1betweenbraces
和 part2
匹配。如果您不添加大括号,它将计算为:
WHERE `sublocality` LIKE 'delhi' OR (`sublocality` LIKE 'dwarka' AND `property_type` = 1);
因此,在一个查询中混合使用 OR
和 AND
时,请务必添加大括号。
SELECT *
FROM `tbl_property`
WHERE
`sublocality` LIKE '%dwarka%' OR
`sublocality` LIKE '%delhi%' OR
`property_type` LIKE '%1%' OR
`property_type` LIKE '%2%' AND
`status` = 1 AND
`property_category` = 1
这是我的查询,但条件不工作请指导我如何使用此类 sql 查询
获取正确的数据可能您需要在查询中添加括号以对 OR/AND 条件进行分组:
SELECT *
FROM `tbl_property`
WHERE
(
`sublocality` LIKE '%dwarka%' OR
`sublocality` LIKE '%delhi%' OR
`property_type` LIKE '%1%' OR
`property_type` LIKE '%2%'
) AND
`status` = 1 AND
`property_category` = 1
首先,我认为你应该在你的问题中描述你想要的结果是什么样子的,你想查询什么,因为现在还不清楚。
其次,非文本搜索不应该使用LIKE
,而是使用等号运算符=
。
第三,您可能需要大括号 ( and )
来对部分查询进行分组,因为您在一个查询中使用 OR 和 AND,它们会混淆。
所以,我会试着举个例子。假设你想找到带有 sublocality = 'delhi'
和 属性 id 1
的属性,你应该写:
SELECT * FROM `tbl_property` WHERE `sublocality` LIKE 'delhi' AND `property_type` = 1;
现在,如果你想获得 属性 1,在 delhi 和 dwarka sublocalities,你可以写:
SELECT * FROM `tbl_property` WHERE (`sublocality` LIKE 'delhi' OR `sublocality` LIKE 'dwarka') AND `property_type` = 1;
这样,您可以确保 part1betweenbraces
和 part2
匹配。如果您不添加大括号,它将计算为:
WHERE `sublocality` LIKE 'delhi' OR (`sublocality` LIKE 'dwarka' AND `property_type` = 1);
因此,在一个查询中混合使用 OR
和 AND
时,请务必添加大括号。