(SELECT test.id as sid, test2.position AS num, test.title AS title FROM test2 LEFT JOIN test ON test2.site_id = test.id ORDER BY test2.position ASC)
union all
(SELECT test.id as sid, (@i := @i + 1) AS num, test.title FROM test, (select @i:=0) AS z ORDER BY test.counter DESC)
ORDER BY num
вот такой вот запрос делает то что я хотел) только теперь другой вопрос: как убрать повторение