( fhuse | 2020. 10. 12., h – 22:13 )

fejből írtam :) nyilván kell az aliasokat használni :) pos=1 már nem kell így.

SELECT `employees`.*, `titles`.`title`, `salaries`.`salary`
FROM `employees`
INNER JOIN (select  t . emp_no
        ,max(title) title 
from    `titles` t
join    (select emp_no 
                , max(from_Date) lst_dat
        from    `titles` 
        group by emp_no       
        ) lt 
    on  lt.emp_no=t.emp_no 
    and lt.lst_dat = t.from_date
WHERE   t.`title`='Staff'
group by t.  emp_no ) as t 
ON
	(t.`emp_no` = `employees`.`emp_no`) AND
---	(t.pos =1)

INNER JOIN (select  s. emp_no
        ,max(salary) salary 
from    `salaries` s
join    (select emp_no 
                , max(from_Date) lss_dat
        from    `salaries` 
        group by emp_no       
        ) ls 
    on  ls.emp_no=s.emp_no 
    and ls.lss_dat = s.from_date
WHERE   s.`title`='Staff'
group by s. emp_no ) as s 
ON
	(s.`emp_no` = `employees`.`emp_no`) AND
---        (s.pos =1)
LIMIT 0, 20