我无法在MYSQL中使用表连接获得正确的语法。我有两张桌子如下......
primary_table
agent_id | primary_area | key
-----------------------------
10 |xx1 | 1
11 |xx2 | 2
12 |xx3 | 3
etc...
secondary_table
agent_id | sec_area | key
-----------------------------
34 |xx1 | 5
37 |xx1 | 6
38 |xx7 | 8
etc...
我要做的就是搜索(例如)agent_id
的两个表,其中xx1作为primary_area
和'sec_area'中的值。我需要使用LIKE
,因为这是一个搜索功能,用户可能希望搜索所有具有值xx
的内容。
然后,返回的数据需要按agent_id
分组并保存在数组中。
答案 0 :(得分:1)
这个怎么样?
SELECT agent_id FROM primary_table WHERE primary_area LIKE "%1"
UNION
SELECT agent_id FROM secondary_table WHERE sec_area LIKE "%1"
Comment: how would I group the results by agent_id using UNION
SELECT
p.id
FROM
primary_table AS p
JOIN
sec_table AS s
ON
p.id=s.id
WHERE
p.area LIKE "%1" AND s.area LIKE "%1"
<强> SQL Fiddle 强>