使用WHERE,AND或OR的CodeIgniter活动记录搜索

CodeIgniter Active-Record Search with WHERE, AND, OR

我正在使用CI的活动记录来生成查询结果。这是产生的查询的内容:

1
2
3
4
5
6
7
8
WHERE manufacturers.name = 'Ford'
OR dealer_email LIKE '%Ford%'
OR dealer_name LIKE '%Ford%'
OR dealer_contact = 'Ford'
OR dealer_city = 'Ford'
OR regions.name = 'Ford'
OR states.state_name = 'Ford'
AND `dealer_city` IN ('Atlanta')

我只想要亚特兰大的福特经销商。结果将返回所有福特经销商和亚特兰大的所有经销商。我不明白我的逻辑错在哪里。 PS:额外的OR语句是对"福特"的广泛搜索的一部分,因为它也可以是名称或联系亚特兰大,并在搜索框中键入。


喜欢这个吗?

1
2
3
4
5
6
7
8
WHERE (manufacturers.name = 'Ford'
OR dealer_email LIKE '%Ford%'
OR dealer_name LIKE '%Ford%'
OR dealer_contact = 'Ford'
OR dealer_city = 'Ford'
OR regions.name = 'Ford'
OR states.state_name = 'Ford')
AND `dealer_city` IN ('Atlanta')