БД MIS3. FAQ — различия между версиями

Материал из ИбисоПедии
Перейти к: навигация, поиск
(Как получить сотрудника зав отделения)
Строка 10: Строка 10:
  
 
   select * from mm.emp e where e.post_id = mm.cn_post_zavotdel() order by id desc limit 1
 
   select * from mm.emp e where e.post_id = mm.cn_post_zavotdel() order by id desc limit 1
 +
 +
=== Пример ===
 +
 +
-- получение завотделения по лечащему врачу
 +
select mm.emp_get_fio_by_id(e.id) as zav_otd                                           
 +
from mm.emp e
 +
where e.post_id = mm.cn_post_zavotdel()
 +
and e.dept_id = (select p.dept_id from mm.hospdoc hd left join mm.emp p on p.id = hd.doctor_emp_id where hd.mdoc_id =:mdoc_id)
 +
order by id desc limit 1
 +
  
 
[[Category:Руководство программиста MIS3]]
 
[[Category:Руководство программиста MIS3]]

Версия 09:34, 27 августа 2015

Как получить сотрудника зав отделения

Это будет сотрудник с правом 9

select e.*
from mm.emp_get_with_rght(9) eg
    inner join mm.emp e on eg.id = e.id

Сотрудник с должностью завотделения

 select * from mm.emp e where e.post_id = mm.cn_post_zavotdel() order by id desc limit 1

Пример

-- получение завотделения по лечащему врачу
select mm.emp_get_fio_by_id(e.id) as zav_otd                                            
from mm.emp e 
where e.post_id = mm.cn_post_zavotdel()
and e.dept_id = (select p.dept_id from mm.hospdoc hd left join mm.emp p on p.id = hd.doctor_emp_id where hd.mdoc_id =:mdoc_id)
order by id desc limit 1