我有第一张表,我计算了这个数字:
SELECT TYPEC ,count(TYPEC)
FROM planning_cuisson
GROUP BY TYPEC
HAVING COUNT(TYPEC) > 0
ORDER BY COUNT(TYPEC) asc
并显示此值:
我还有一个名为zp01的表,其中一个Colonne与TYPEC的TYPE_CUISSON相同。
如何通过tables =>之间的连接获得此结果?
我尝试了这种请求,但没有工作:
SELECT *
FROM planning_cuisson p1, zp01 p2
WHERE p2.type_cuisson=p1.typec
GROUP BY p1.TYPEC
HAVING COUNT(p1.TYPEC) > 0
ORDER BY COUNT(p1.TYPEC) asc
答案 0 :(得分:3)
你必须使用这样的连接:
SELECT p2.*, p1.cnt_typec
FROM zp01 p2
JOIN (
SELECT TYPEC, count(TYPEC) AS cnt_typec
FROM planning_cuisson
GROUP BY TYPEC
HAVING COUNT(TYPEC) > 0
) p1
WHERE p2.type_cuisson = p1.typec
ORDER BY cnt_typec ASC;
在内部查询中,您将获得typec计数为>的那些记录。 0,然后将这些记录与zp01
表连接,以获得所需的记录。