Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Foxpro/Clipper/Dbase > Сложный запрос


Автор: Лисеночек 27.7.2005, 16:32
Добрый день.
У меня вопросик такой: иметься глюченная БД в DBF файлах: таблица деталей “HIST_C_P.DBF” , в котором ключ – поле SHIFR,
Таблица “PF_DET.DBF”, в которой внешний ключ этот же SHIFR и в ней еще есть поля, которые называются по названиям различный изделий (таких полей допустим 10). В строках этих полей стоит цифра, означающая – идет ли на данное изделие данная деталь, и сколько.
И есть таблица “IZD.DBF” - в ней тоже в названиях полей зашифрованы названия изделий. А строка только одна – русское название каждого изделия.
Мне нужно построить такой запрос: вывести названия деталей из первой таблицы для определенного названия изделия из третей.

Автор: Cashey 29.7.2005, 23:54
Честно говоря я не очень четко понял задачу. Но так как я понял, решение выглядит так:
Код

SELECT <поле названия деталий> ;
FROM  HIST_C_P ;
LEFT JOIN PF_DET ON PF_DET.SHIFR = HIST_C_P.SHIFR AND <алгоритм названия поля с изделиями> # 0 ;
LEFT JOIN IZD ON <алгоритм названия поля с изделиями> = <связующий признак> ;
INTO <куда надо>

Автор: Ser9a 20.10.2005, 20:50
подробнее плз.

Автор: Dimchik 24.10.2005, 03:57
Лисеночек

А можно попобробнее, а то что-то не очень понятно

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)