Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: -0.973 c
1-1128325284
AlexLines
2005-10-03 11:41
2005.10.23
Как узнать, что приложение запущено под win 95, 98 или win ME


1-1127995363
superoberon
2005-09-29 16:02
2005.10.23
Прозрачность DBGrid


6-1120161129
Yegorchic
2005-06-30 23:52
2005.10.23
HTML страница в WebBrowser не через Navigate


3-1126268799
alsov
2005-09-09 16:26
2005.10.23
Подскажите функция, которая из значения null делает заданый текст


3-1126247692
Beetle(c)]u$
2005-09-09 10:34
2005.10.23
Commit в IBase




   Наверх