Mysql加入限制

时间:2013-01-17 12:41:10

标签: mysql

我的查询是这样的......

SELECT tb1.name, COUNT(tb2.payment_date) as first_payment FROM table1 LEFT JOIN table2 tb2 ON tb2.id_user = tb1.id

+-----------+-------------+
| Name      |  Count      |
+-----------+-------------+
| John      |   543534543 |

但我希望我的查询返回加入限制,例如:

LEFT JOIN tb2 ON tb2.id_user = tb1.id { LIMIT JOIN }

只返回一种关系.....

+-----------+-------------+
| Name      |  Count      |
+-----------+-------------+
| John      |   3         |

2 个答案:

答案 0 :(得分:1)

select tb1.name, count(*) as first_payment
from table1 t1
LEFT JOIN (SELECT id_user, min(payment_date) 
           FROM table2
           GROUP BY id_user) as t2
ON t1.id = t2.id_user
GROUP BY tb1.name

答案 1 :(得分:0)

SELECT 
    tb1.name, 
    COUNT(tb2.payment_date) as first_payment 
FROM table1 
LEFT JOIN (SELECT id_user , MIN(id) FROM table2 GROUP BY id_user)as tb2 ON tb2.id_user = tb1.id