Приветствую Вас,

04.12.2006 в 16:07, Вы писали:

OL>  SELECT
OL>   e.id,
OL>   e.name,
OL>   e.par1,
OL>   eh.date_from,
OL>   eh.par5,
OL>  FROM
OL>   dir_employees e
OL>     LEFT JOIN dir_employees_his eh    ON     e.id = eh.pid AND 
OL> eh.ID = (select max или first 1 ID  from dir_employees_his where pid = 
eh.pid)

Да заработало, ;) большое спасибо. Волнует один вопрос, если например
в dir_employees будет порядка 30 тыс. записей, а в dir_employees_his
30 тыс. * 5, наверное будут буксы с селектами? Сейчас буду генерить
базу, смотреть на быстродействие такого селекта.

SELECT
  e.id,
  e.name,
  eh.pid,
  eh.date_from,
  eh.par1,
  eh.par2,
  eh.par3
 FROM
  dir_employees e
    LEFT JOIN dir_employees_his eh ON
      (e.id = eh.pid AND
       eh.id = (select first 1 sh.id from dir_employees_his sh where sh.pid = 
eh.pid AND sh.date_from < CURRENT_TIMESTAMP ORDER BY sh.date_from DESC))

Большое спасибо еще раз я даже не думал что в ФБ 1.5 такое заработает :)

-- 
С Уважением, Дмитрий Котельников

Ответить