Гость
Форумы / Другие СУБД [игнор отключен] [закрыт для гостей] / BDE составить Local SQL запрос / 1 сообщений из 1, страница 1 из 1
20.12.2013, 13:11
    #38507762
AVRob
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
BDE составить Local SQL запрос
В приложении Delphi имеются 2 таблицы

1-ая Orders.dbf в котором сожержатся информация о заказах

ordernotovar_id(char 6)gorod_id(char 12)
Код: plaintext
1.
2.
1,          2,             1     2
2,          3,             3
Поле gorod_id может содержать 2 кода

и имеется таблица info.dbf где хранятся наименования товаров и городов

type(char 1)id (char 5)name(char 40)
Код: plaintext
1.
2.
3.
4.
5.
6.
"g",         1,          Сочи
"g",         2,          Моска
"t",         1,          стол
"g",         3,          Киев
"t",         2,          стул
"t",         3,          кресло

нужно составить SQL запрос Для BDE Local SQL по номеру заказа c наименованиями товара и первого города.

запрос

SELECT o.orderno, i1.name AS tovar,i2.name AS gorod
FROM orders o,info i1,info i2
WHERE
(o.orderno=2)
and(i1.type="t")and(i1.id=SUBSTRING(o.tovar_id FROM 2 FOR 5))
and(i2.type="g")and(i2.id=SUBSTRING(o.gorod_id FROM 2 FOR 5))

возвращает пустую таблицу

а запросы

SELECT o.orderno, i1.name AS tovar
FROM orders o,info i1
WHERE
(o.orderno=2)
and(i1.type="t")and(i1.id=SUBSTRING(o.tovar_id FROM 2 FOR 5))

SELECT o.orderno, i1.name AS gorod
FROM orders o,info i2
WHERE
(o.orderno=2)
and(i2.type="g")and(i2.id=SUBSTRING(o.gorod_id FROM 2 FOR 5))

по отдельности выдают правильный результат.
...
Рейтинг: 0 / 0
Форумы / Другие СУБД [игнор отключен] [закрыт для гостей] / BDE составить Local SQL запрос / 1 сообщений из 1, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]