我想将两个查询合并在一起,但我不知道如何!
首先查询:
D[n][X]
我在此查询中有工作。
第二次查询:
SELECT tablesite.name,
tablesite.family,
job_list.job_name,
tablesite.phone_number
FROM tablesite
INNER JOIN relation
on tablesite.id_user=relation.user_id
INNER JOIN job_list
on relation.job_id=job_list.job_id
此表的结果如下:
我在第二个查询中的COUNT(action.service_provider_id)时有COUNT(action.service_provider_id)
合并这两个表之后,结果必须是这样的:
我用油漆做了这个:p:D
使用过的表格
tablesite:
动作:
关系:
job_list:
sasha试过这个:
答案 0 :(得分:3)
两个查询的结果可以合并为:
CREATE TEMPORARY TABLE t1 (KEY(name,family,phone_number)) SELECT tablesite.name,
tablesite.family,
job_list.job_name,
tablesite.phone_number
FROM tablesite
INNER JOIN relation
on tablesite.id_user=relation.user_id
INNER JOIN job_list
on relation.job_id=job_list.job_id;
SELECT ts.name,
ts.family,
ts.phone_number,t1.job_name,
COUNT(action.service_provider_id)
FROM tablesite ts JOIN t1 USING(name,family,phone_number)
LEFT JOIN action
ON ts.id_user=action.service_provider_id
AND action.vote !='' AND action.customer_comment =''
GROUP BY name, family, job_name, phone_number;
可以避免使用子查询来使用临时表,但如果由于子查询结果中缺少连接键而导致结果集很大,则会遇到问题。