SELECT * FROM ( SELECT u.id AS 'u_id', f.id AS 'f_id', 0 AS 'fmydb_id', u.id AS 'id', (SELECT GREATEST(max(f.updated_date), u.last_details_update) FROM feedback f WHERE f.user_id = u.id) AS 'max_updated_date', u.active AS 'active', u.lname AS 'lname', u.fname AS 'fname', u.lname2 AS 'lname2', u.fname2 AS 'fname2', u.postcode AS 'postcode', u.city AS 'city', u.email AS 'email', u.phone_home AS 'phone_home', u.phone_work AS 'phone_work', u.phone_cell AS 'phone_cell', u.origin AS 'origin' FROM users u LEFT JOIN feedback f on u.id=f.user_id LEFT JOIN conveyancers c ON c.id = f.conveyancer_id LEFT JOIN admins a on u.origin=a.id WHERE (substr(u.date,1,10)>='2007-01-01' AND substr(u.date,1,10)<='2007-08-30' OR u.date='0000-00-00 00:00:00') AND substr(f.date,1,10)>='2007-01-01' AND substr(f.date,1,10)<='2007-08-30' AND (substr(u.date,1,10)>='2007-01-01' AND substr(u.date,1,10)<='2007-08-30' OR u.date='0000-00-00 00:00:00') AND archived = 0 GROUP BY u.id UNION SELECT 0 as 'u_id', f.id AS 'f_id', f.mydbid AS 'fmydb_id', 0, _utf8'', _utf8'', _utf8'', _utf8'', _utf8'', _utf8'', _utf8'', _utf8'', _utf8'', _utf8'', _utf8'', _utf8'', _utf8'' FROM feedback f LEFT JOIN conveyancers c ON c.id = f.conveyancer_id WHERE substr(f.date,1,10)>='2007-01-01' AND substr(f.date,1,10)<='2007-08-30' AND f.user_id IS NULL AND f.mydbid IS NOT NULL GROUP BY f.mydbid UNION SELECT 0 as 'u_id', f.id AS 'f_id', 0 AS 'fmydb_id', 0, _utf8'', _utf8'', _utf8'', _utf8'', _utf8'', _utf8'', _utf8'', _utf8'', _utf8'', _utf8'', _utf8'', _utf8'', _utf8'' FROM feedback f LEFT JOIN conveyancers c ON c.id = f.conveyancer_id WHERE substr(f.date,1,10)>='2007-01-01' AND substr(f.date,1,10)<='2007-08-30' AND f.user_id IS NULL AND f.mydbid IS NULL GROUP BY f.id ) aaa ORDER BY max_updated_date DESC LIMIT 10
и как тут понять почему он не находит юзера...