Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.09.10;
Скачать: [xml.tar.bz2];

Вниз

SQL-запрос   Найти похожие ветки 

 
Evlahov ©   (2006-08-16 16:11) [0]

Помогите пожалуйста!
Имеются две таблицы PLAT (платежки (PLAT.№,  PLAT.ORG_P,  PLAT.ORG_B)) и ORG (организации (ORG.№, ORG.NAME)) В таблице PLAT хранятся данные (Организация получатель и Банк получатель) данные добавляются из таблицы ORG (организации). Таблицы связаны (ORG.№ -первичный ключ), (PLAT.ORG_P,  PLAT.ORG_B – внешние ключи)
Вопрос как написать запрос чтобы вывести наименование организации ПОЛУЧАТЕЛЯ и наименование БАНК ПОЛУЧАТЕЛЬ


 
Desdechado ©   (2006-08-16 16:21) [1]

SELECT P.№, O.name, B.name
FROM Plat P, Org O, Org B
WHERE P.org_p = O.№ AND P.org_b = B.№


короче, таблицу можно несколько раз с разными псевдонимами в FROM указывать


 
evvcom ©   (2006-08-17 08:34) [2]

> [0] Evlahov ©   (16.08.06 16:11)

У тебя организации и банки в одной куче? Неверный подход. Насчет банков: вообще лучше взять официальный файл Центробанка и с ним работать.


 
StriderMan ©   (2006-08-17 10:09) [3]


> Desdechado ©   (16.08.06 16:21) [1]

ИМХО лучше JOIN использовать при выборе из нескольких таблиц.


 
Sergey13 ©   (2006-08-17 10:13) [4]

> [3] StriderMan ©   (17.08.06 10:09)

Он и так будет по любому. А внешний тут вроде смысла не имеет.


 
Desdechado ©   (2006-08-17 11:33) [5]

> У тебя организации и банки в одной куче? Неверный подход.
Почему? А что, банк - не организация, что ли? И один банк заплатить другому не может что ли сам за себя, а не за клиента?
Хотя возможны варианты (например, открыть счет для себя у себя :)

StriderMan ©   (17.08.06 10:09) [3]
Методологически - да. Тогда легко визуально разделяются соединения таблиц и ограничивающие условия. Не зря именно так стандарт рекомендует.
Но привычка, как говорят, - вторая натура.


 
evvcom ©   (2006-08-17 13:52) [6]

> [5] Desdechado ©   (17.08.06 11:33)
> Почему? А что, банк - не организация, что ли?

Организация. Но... Банк может выступать как обычный контрагент (дебитор/кредитор) со всеми платежными реквизитами: ИНН, наименование и таблицей счетов: БИК банка (внешний ключ), № счета и пр. И может выступать как (как бы это точнее выразить) посредник при совершении финансовых сделок со своим наименованием, БИКом (первичный ключ) и пр. Это разные сущности.
Собрав все это в одну кучу, мы добавляем себе лишнего геморроя. Таблица со счетами (ее логика) должна будет постоянно следить при записи ключа банка, а банк ли это? Автор ничего не сказал про используемую им СУБД, но я так подозреваю, что опять какой-нить dBase или Paradox. В этом случае с таблицей банков вообще не будет геморроя с обновлением, если брать Центробанковский файл в неизменном виде.
Ладно, все ИМХО. Но именно с банками и платежами я в свое время возился при внедрении SAP R/3 на предыдущем месте работы, и там именно так и было построено.


 
Evlahov ©   (2006-08-18 17:22) [7]

СУБД использую InterBase. Большое спасибо за помощь, все получилось.



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2006.09.10;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.039 c
3-1152081248
zorik
2006-07-05 10:34
2006.09.10
Какое событие в TDataLink отвечает за изменение данных


15-1155477602
AlexanderMS
2006-08-13 18:00
2006.09.10
Вопрос по *.BAT файлам.


15-1156087524
PSPF2003
2006-08-20 19:25
2006.09.10
Улыбнитесь :)))


15-1155531739
Шмелъ
2006-08-14 09:02
2006.09.10
Linux shell


3-1151101359
makvell
2006-06-24 02:22
2006.09.10
Вставка картинки в BLOB





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский