You can extract users who ordered earlier than three days ago.
SELECT users.email AS email FROM t2 AS users LEFT JOIN t1 AS orders ON users.id = orders.user WHERE orders.date < (NOW() - INTERVAL 3 DAY) AND orders.id IS NOT NULL
However, this query does not retrieve orders, if you try to add orders.id to the SELECT clause, then any random order identifier will be extracted to MySQL (if the user has several).
If you use just a JOIN union, you can retrieve all orders placed earlier than three days. However, users users.email will be repeated, the number of times the user placed an order.
SELECT orders.id AS order_id, users.email AS email FROM t2 AS users JOIN t1 AS orders ON users.id = orders.user WHERE orders.date < (NOW() - INTERVAL 3 DAY)
Alternatively, you can use the first LEFT JOIN query, retrieving the list of order IDs using the GROUP_CONCAT () function
SELECT users.email AS email, GROUP_CONCAT(orders.id) AS orders_ids FROM t2 AS users LEFT JOIN t1 AS orders ON users.id = orders.user WHERE orders.date < (NOW() - INTERVAL 3 DAY) AND orders.id IS NOT NULL