Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.10.23;
Скачать: CL | DM;

Вниз

Как правильно сдеать запрос?   Найти похожие ветки 

 
Киря   (2005-09-23 13:45) [0]

Мне нужно сделать выборку данных из базы с одним условием
нужно выбрать значения
Typ integer;
Pers bit;
TabNo int;
Summa float;
DateOp datetime;
из таблицы Kassa

и подставить столбец Fio в котором
Если pers=1 то значение select Fio from Personal where Kassa.TabNo=Personal.TabNo
Если pers=0 то значение select Fio from Patient where Kassa.TabNo=Patient.TabNo

Можно ли это сделать с помощью SQL запроса
а то если делать это в процедуре OnCalcFields то делается это довольно долго
Если можно то как?
Заранее спасибо


 
Nikolay M. ©   (2005-09-23 13:56) [1]


> Можно ли это сделать с помощью SQL запроса


SELECT (запрос, если pers=0)
UNION ALL
SELECT (запрос, если pers=1)


ПС
Рекомендую подумать насчет реинжиниринга неправильной структурой твоей БД.


 
evvcom ©   (2005-09-23 14:01) [2]

select
 case k.pers
   when 0 then pt.Fio
   when 1 then pr.Fio
 end as Fio
from Kassa k
 left join Personal pr
   on pr.TabNo=k.TabNo
 left join Patient pt
   on pt.TabNo=k.TabNo



Страницы: 1 вся ветка

Текущий архив: 2005.10.23;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.046 c
1-1128155503
Kolan
2005-10-01 12:31
2005.10.23
Как правильно удалить запись содержащюю дин. массивы


14-1128080700
nk
2005-09-30 15:45
2005.10.23
AVP 5.0.121


4-1124692715
Malignus
2005-08-22 10:38
2005.10.23
Определение активного юзера из сервиса


14-1128356820
Knight
2005-10-03 20:27
2005.10.23
Компонент аля PaintBrush...


1-1127979875
Asmys Software
2005-09-29 11:44
2005.10.23
Ring-0