Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

запрос [D6]


Ann ©   (2003-05-06 15:55:00) 

Доброго дня!
Подскажите пожалуйста, а то что-то никак не соображу
есть 2 таблицы
Первая
SPRRS
RS_ID,
NAME,
KONT_ID,
NOMER,
BANK1_ID,
BANK2_ID,
KORRESP,
NAZNACH,
DELETE_PR
и вторая SPRBANK
BANK_ID,
NAME

нужно составить такой запрос, чтобы выдалась запись, в которой были все поля из первой таблицы, а вместо bank1_id и bank2_id были наименования этих банков из второй таблицы. Видимо неправильно строю условие... Подскажите.


Sheriff   (2003-05-06 17:04:00) [1]

значит я не понял вопроса...
прошу прощения... :)


Ann   (2003-05-06 17:03:00) [2]

>Dona
ага, так и получилось


Ann   (2003-05-06 17:01:00) [3]

<Sheriff
неа .. так не работает


Dona   (2003-05-06 17:01:00) [4]

> Sheriff (06.05.03 16:56)

Тогда, наверное, будут возращены те записи, где оба банка совпадают


Ann   (2003-05-06 16:57:00) [5]

нет, работает как надо! :) спасиб..
просто под вечер устаешь, вот и не могла никак додуматься :)


Sheriff   (2003-05-06 16:56:00) [6]

любопытно...
а если так?
select s.NAME, s.KONT_ID, s.NOMER, s.KORRESP, s.NAZNACH, s.DELETE_PR, n.NAME
from SPRRS s, SPRBANK n
where s.BANK1_ID = n.BANK_ID and s.BANK2_ID = n.BANK_ID


Соловьев   (2003-05-06 16:48:00) [7]


> сейчас буду вникать что делала не правильно

что хоть не правильно? может правильно все-таки выдавало? join и left join разные вещи...


Ann   (2003-05-06 16:46:00) [8]

> Соловьев
Спасибо! :) работает
сейчас буду вникать что делала не правильно

еще раз спасибо :)


Соловьев   (2003-05-06 16:41:00) [9]

гоню
select t1.RS_ID, t1.NAME, t1.KONT_ID, t1.NOMER, t2.NAME,
t3.NAME
, t1.KORRESP, t1.NAZNACH, t1.DELETE_PR
from SPRRS t1
left join SPRBANK t2 on t1.BANK1_ID=t2.BANK_ID
left join SPRBANK t3 on t1.BANK2_ID=t3.BANK_ID


Соловьев   (2003-05-06 16:40:00) [10]

select t1.RS_ID, t1.NAME, t1.KONT_ID, t1.NOMER, t2.BANK1_ID,
t3.BANK2_ID, t1.KORRESP, t1.NAZNACH, t1.DELETE_PR
from SPRRS t1
left join SPRBANK t2 on t1.BANK1_ID=t2.BANK_ID
left join SPRBANK t3 on t1.BANK2_ID=t3.BANK_ID


Dona   (2003-05-06 16:38:00) [11]

А если попробовать все то же, но без AS


Ann   (2003-05-06 16:29:00) [12]

не проходит.. ругается на As


Dona   (2003-05-06 16:25:00) [13]

Наверное, что-то вроде этого:

SELECT sprRs.*, SprBank.Name, SprBank_1.Name
FROM (SprRs INNER JOIN SprBank ON SprRs.Bank1_Id = SprBank.Bank_Id) INNER JOIN SprBank AS SprBank_1ON SprRs.Bank2_Id = SprBank_1.Bank_Id;


Наверх

Титульная страница Поиск, карта сайта Написать письмо