vasam
Новичок
есть дилемма: SELECT MAX()
добрый день!
хочу понять как отработает запрос типа:
SELECT m.int_member_id, MAX( o.date_purchased ) AS purchase_date
FROM customers c
LEFT JOIN massmail_response mr ON c.customers_id = mr.customer_id
INNER JOIN tbl_member m ON m.int_customer_id = c.customers_id
LEFT JOIN orders o ON o.customers_id = c.customers_id
WHERE mr.customer_id IS NULL AND (
o.date_purchased < DATE_SUB( CURDATE( ) ,
INTERVAL '1' YEAR ) OR o.date_purchased IS NULL
)
GROUP BY c.customers_id
ORDER BY m.int_member_id DESC
в нем условие: o.date_purchased < DATE_SUB( CURDATE( ) , INTERVAL '1' YEAR )
o.date_purchased будет браться максимальное или какое попало?
если в селекте есть MAX( o.date_purchased ), то выбраться должно максимальное значение.
Хотя, с другой стороны условие в WHERE перекроет MAX( o.date_purchased ).
Спасибо за совет!
добрый день!
хочу понять как отработает запрос типа:
SELECT m.int_member_id, MAX( o.date_purchased ) AS purchase_date
FROM customers c
LEFT JOIN massmail_response mr ON c.customers_id = mr.customer_id
INNER JOIN tbl_member m ON m.int_customer_id = c.customers_id
LEFT JOIN orders o ON o.customers_id = c.customers_id
WHERE mr.customer_id IS NULL AND (
o.date_purchased < DATE_SUB( CURDATE( ) ,
INTERVAL '1' YEAR ) OR o.date_purchased IS NULL
)
GROUP BY c.customers_id
ORDER BY m.int_member_id DESC
в нем условие: o.date_purchased < DATE_SUB( CURDATE( ) , INTERVAL '1' YEAR )
o.date_purchased будет браться максимальное или какое попало?
если в селекте есть MAX( o.date_purchased ), то выбраться должно максимальное значение.
Хотя, с другой стороны условие в WHERE перекроет MAX( o.date_purchased ).
Спасибо за совет!