最大ň我需要建立推进的查询,可以得到最新的购买客户机的的Propel 1.6
请在您的回答这些表/列名:
- 顾客:ID,名称
- 购买:身份证,CUSTOMER_ID,日期
从这个问题在这里SQL join: selecting the last records in a one-to-many relationship
我需要建立推进基于查询的其中一个查询:
或SELECT c.*, p1.* FROM customer c JOIN purchase p1 ON (c.id = p1.customer_id) LEFT OUTER JOIN purchase p2 ON (c.id = p2.customer_id AND (p1.date < p2.date OR p1.date = p2.date AND p1.id < p2.id)) WHERE p2.id IS NULL;
SELECT c.*, p.*
FROM customer c INNER JOIN
(
SELECT customer_id,
MAX(date) MaxDate
FROM purchase
GROUP BY customer_id
) MaxDates ON c.id = MaxDates.customer_id INNER JOIN
purchase p ON MaxDates.customer_id = p.customer_id
AND MaxDates.MaxDate = p.date
你能告诉我们有什么你尝试过? – j0k
是的,但现在没有。发现这个h TTP://stackoverflow.com/questions/2111384/sql-join-selecting-the-last-records-in-a-one-to-many-relationship 但我无法将它推动查询 – petkopara