Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.11.2008, 19:22   #1
Miha87
Пользователь
 
Регистрация: 15.10.2008
Сообщений: 10
Восклицание SQL запрос из двух таблиц.(сложный)

Поможите пожалуйсто!
Нужно вывести наименование товара по двум условиям.

Допустим 3 таблицы:
1 - Наименование
--------------------
id
Name
Status
...


2 -Залог
------------
id
IDNaimenovaniya
DataOform
...
DataVikupa


3 - Выкуп(TQuery) - Подключаем к таблице Залог
---------------------
...
...

Делаю запрос на выкуп.
Выборка идёт по дате выкупа и состоянию товара (поле Status)
т.к. TQuery подключен к таблице залог и в ней имеется поле DataVikupa, то проблем нет, но мне ещё и по Status нужно фильтровать который находится в другой таблице (Наименование).

Делал так:
Select *
From Zalog
Where (Zalog.DataVikupa = 1) AND status=(SELECT Sostoyanie FROM Naimenovanie Where Sostoyanie='Магазин')


где:
d1 - дата
status - lookup поле связанное с табл. Наименование.

Пишет:
Invalid field name
status


Вообщем неполучается, да и может недолжно получаться, я незнаю как такие запросы делать.
Подскажите пожалуйсто.
Мне нужно это знать!
Miha87 вне форума Ответить с цитированием
Старый 09.11.2008, 19:33   #2
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Цитата:
Нужно вывести наименование товара по двум условиям.
Ну, и где же эти условия?
Ваш запрос даже намеков на это не дает. Словесно описать можете, что нужно получить?

19.40
З.Ы. Не может, похоже.

Последний раз редактировалось mihali4; 09.11.2008 в 19:54.
mihali4 вне форума Ответить с цитированием
Старый 09.11.2008, 19:38   #3
Miha87
Пользователь
 
Регистрация: 15.10.2008
Сообщений: 10
По умолчанию

1 условие - это по дате
2 по статусу товара.
Делаю так, результат дает, но каряво
Select *
From Zalog, Naimenovanie
Where Zalog.DataVikupa = 1 AND Naimenovanie.Sostoyanie LIKE 'Залог';

Но не 10чном экземпляре а в одном.
Проверял этот запрос, у меня всего одно соответствующее поле, а он мне 10 выводит.
Проблема в запросе?
Miha87 вне форума Ответить с цитированием
Старый 10.11.2008, 03:29   #4
slips
Форумчанин
 
Аватар для slips
 
Регистрация: 28.10.2008
Сообщений: 350
По умолчанию

А что значит Zalog.DataVikupa=1 -? Из названия предполагается что там должна быть дата.. а даты нет..мм?
почему выдает в 10-ом экземпляре все очень просто у тебя тащиться из двух таблиц, думаю в таблице наименование у тебя 10 записей наверяка проблема по-любому в запросе
slips вне форума Ответить с цитированием
Старый 10.11.2008, 03:33   #5
slips
Форумчанин
 
Аватар для slips
 
Регистрация: 28.10.2008
Сообщений: 350
По умолчанию

select *
from Zalog,Naimenovanie
where Zalog.DataVikupa = 1 AND Naimenovanie.Sostoyanie LIKE 'Залог' and Zalog. IDNaimenovaniya=Naimenovanie.id
slips вне форума Ответить с цитированием
Старый 10.11.2008, 11:04   #6
Miha87
Пользователь
 
Регистрация: 15.10.2008
Сообщений: 10
По умолчанию

Slips всё получилось, спасибо тебе огромное, я в SQL не как...
Miha87 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
вопросам знатокам и просто любителям, нужно составить не сложный sql запрос modz SQL, базы данных 3 14.08.2013 11:20
Объединение двух таблиц jekis2506 Microsoft Office Excel 5 15.04.2009 08:34
сложный sql запрос kate158 БД в Delphi 0 18.09.2008 11:38
Как оптимизировать запрос MySQL с выборкой из двух таблиц. Johnatan SQL, базы данных 6 13.04.2008 03:10
Сложный SQL-запрос ole777 БД в Delphi 1 08.05.2007 20:56