Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2005.10.23;
Скачать: [xml.tar.bz2];

Вниз

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

 
Киря   (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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.44 MB
Время: 0.037 c
14-1127804254
Empleado
2005-09-27 10:57
2005.10.23
Небольшие заметки. Бельгия.


3-1126191479
UnDISCOvery
2005-09-08 18:57
2005.10.23
ADO + Access - ускорить надо!


14-1128003385
matemat
2005-09-29 18:16
2005.10.23
Помогите пожалуйста с математикой.


8-1117163884
race1
2005-05-27 07:18
2005.10.23
векторные либы


1-1128073206
Артур
2005-09-30 13:40
2005.10.23
Автозагрузка





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский