mysql连接和计数行

时间:2012-11-15 10:03:37

标签: php mysql database select join

我需要查询两个表

第一个表'archive_agent_booking':

|account_no|week|year|description|price|date|job_id|
----------------------------------------------------

第二个表是'invoice_additions':

|account_no|week|year|description|amended_price|amend_date|
-----------------------------------------------------------

我的目标是按每个数据库中的每周数字降序获取以下数据,并记住两个表中可能不存在周数。

数据需要如下所示:

周数:(即使其中一个表中不存在周数,这也将来自两个表。)

约会:(这将来自第一个表,只是一周出现的COUNT()。)

发票调整:(这将来自第二个表,并且是以前出现的周数的计数。)

我到目前为止所选择的查询只针对一个表:

"SELECT week, year,
COUNT(week) AS week_no FROM archive_agent_booking
WHERE account_no='$account_no'
GROUP BY week, year
ORDER BY week DESC"

我无法将第二个表链接到此查询,因此它会计算每个表中的两个周列。

1 个答案:

答案 0 :(得分:0)

SELECT 
    week, 
    year,
    COUNT(week) AS week_no 
FROM archive_agent_booking
left join invoice_additions on invoice_additions.week = archive_agent_booking.week
WHERE account_no='$account_no'
GROUP BY week, year
ORDER BY week DESC

由于你没有外键,你可以在一周加入