is there any way to left join the select result in MySQL 5.7 Now I am using this query to left join the result of my query:
select date_format(FROM_UNIXTIME(created_time/1000), '%Y-%m-%d') as dt,count(*)
from action_record a
where user_id = 16459
and action_type = 1
group by date_format(FROM_UNIXTIME(created_time/1000), '%Y-%m-%d')

left JOIN 

select date_format(FROM_UNIXTIME(statistic_time/1000), '%Y-%m-%d') as dt,max(login_count) as login_count
from report_user b
where user_id = 16459
group by date_format(FROM_UNIXTIME(statistic_time/1000), '%Y-%m-%d')

on a.dt = b.dt

but it shows error:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'left JOIN 
select date_format(FROM_UNIXTIME(statistic_time/1000), '%Y-%m-%d') as' at line 6

what should I to fix this problem?
You have an incorrect mix of operators in the wrong order, specifically your LEFT JOIN operator can't come after the WHERE or GROUP BY operators. (Normally what you're trying to achieve would be easy with CTEs but your version of MySQL doesn't have CTEs yet.)
Re-writing the query with sub-queries like this is how you can achieve your goals:
SELECT a.dt, a.groupCount, b.login_count
FROM
(
    select date_format(FROM_UNIXTIME(created_time/1000), '%Y-%m-%d') as dt,count(*) as groupCount
    from action_record a
    where user_id = 16459
        and action_type = 1
    group by date_format(FROM_UNIXTIME(created_time/1000), '%Y-%m-%d')
) a
LEFT JOIN 
(
    select date_format(FROM_UNIXTIME(statistic_time/1000), '%Y-%m-%d') as dt,max(login_count) as login_count
    from report_user b
    where user_id = 16459
    group by date_format(FROM_UNIXTIME(statistic_time/1000), '%Y-%m-%d')
) b
ON a.dt = b.dt