我正在尝试为页面编写搜索功能,并且有许多表与我的特许经营表相关并通过特许经营表 id 连接。因此,城市名称可以在城市表中,但城市与位置表相关联,该位置表与特许经营表相关联。
我们编写了一个内连接,它确实选择了正确的行,但是如果在多个表中或在表中的多个位置找到该术语,则每次找到它都会返回一行。有没有办法限制它。我在想一个小组会这样做,但不确定我会在哪里说“GROUP BY Franchise_id”
SELECT * FROM franchises
INNER JOIN
locations
ON
locations.franchise_id = franchises.franchise_id
INNER JOIN
operators
ON
operators.operator_id = franchises.operator_id
INNER JOIN
state_owners
ON
state_owners.state_owner_id = franchises.state_owner_id
WHERE
franchises.franchise_name LIKE :term OR
franchises.franchise_status LIKE :term OR
locations.location_name LIKE :term OR
locations.location_state LIKE :term OR
operators.operator_first_name LIKE :term OR
operators.operator_last_name LIKE :term OR
operators.operator_id LIKE :term OR
state_owners.state_owner_first_name LIKE :term OR
state_owners.state_owner_last_name LIKE :term OR
state_owners.state_owner_owned_state LIKE :term