![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Посоветуйте путь решения задачи. [D5, IB6.x, FB 1.0.2]
Карелин Артем © (2003-08-14 17:21:00)
Итак, имеем таблицу едениц транспорта. Данные о машинах, категории и т.д. и т.п. Около 40 полей. Есть таблицы владельцев, адресов, марок, ТО... Техника ссылается на владельцев и на марки. Из владельцев ссылка на адреса; ТО ссылается на машину.
Значит есть еще временные таблицы владельцев и марок. Как лучше организовать поиск техники, в которой идентификаторы адресов и(или) марок есть во временной таблице и вдобавок некоторые данные ТО и самой техники удовлетворяли условию?
Думаю что надо делать выборку с учетом временных таблиц внутри хранимой процедуры, а на клиенте дополнительно указывать критерий выборки по технике и ТО.
Можно конечно сделать в хранимой процедуре запрос типаselect ... where car.cid in tcar.cid, но скорость выполнения такого запроса невелика.
Карелин Артем (2003-08-15 08:53:00) [1]
HSolo © (14.08.03 18:47)
Симметрично :)
HSolo (2003-08-14 18:47:00) [2]
> Без ХП не обойтись
А зачем без них обходиться? Удобная штука. У меня все поиски/выборки/отчеты на ХП сделаны.
Johnmen (2003-08-14 17:51:00) [3]
Тогда просто JOIN.
Карелин Артем (2003-08-14 17:47:00) [4]
HSolo © (14.08.03 17:45)
Без ХП не обойтись. Условия слишком сильно варьируются.
Карелин Артем (2003-08-14 17:46:00) [5]
Конкретно:
1) выбрать данные с одной временной таблицы.
2) 2 таблицы. Чтобы в обоих было.
HSolo (2003-08-14 17:45:00) [6]
Мои 5 коп. к Johnmen © (14.08.03 17:25): эти самые JOIN-ы можно засунуть в хранимую процедуру. Тогда вызов с клиента - просто:
select ... from процедура(параметры)
Плюс можно рулить правами: какого юзера к каким процедурам допустить.
Johnmen (2003-08-14 17:36:00) [7]
Зависит от конкретной логики.
А чтобы знать больше - просто почитай любую доку по SQL. :)
Карелин Артем (2003-08-14 17:30:00) [8]
Я ими как-то не пользуюсь и мало о них знаю. Левый, правый, внешний, внутренний - какой брать?
Johnmen (2003-08-14 17:25:00) [9]
JOIN с соответствующими временными табл.