|
|
|
Двойной запрос к базе данных
|
|||
|---|---|---|---|
|
#18+
Доброго дня! Подскажите пожалуйста можно ли организовать следущее: Есть база данных. В базе клиенты, их фио и прочее. в базе 2 таблицы: клиенты и договора. в таблице с договорами храняться данные продавца покупателя. тоесть Продавец Иванов, покупатель Петров. Иванов и Петров храняться в таблице клиентов. Возможно лди организовать запрос так, чтоб при выборе договора (из таблици договора), из таблицы Клиенты выбирались те самые Иванов И Петров? Сейчас находиться кто-то один (выборка происходит по продавцу только). Короче говоря так: Выбираю из таблицы договор номер 1, где в колонке Продавец: Иванов, в колонке покупатель Петров. Автоматически в таблице Клиенты находиться Иванов. Нужно, чтоб Находился и Иванов и Петров. Вот! Спасибо за внимание, надеюсь на вашу помощь! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.04.2009, 11:50 |
|
||
|
Двойной запрос к базе данных
|
|||
|---|---|---|---|
|
#18+
Mazai-XZ, join ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.04.2009, 12:19 |
|
||
|
Двойной запрос к базе данных
|
|||
|---|---|---|---|
|
#18+
Забыл добавить: На форме 2 датагрида и 2 адодс. Запрос на выборку из таблицы с клиентами реализован так: apbase.Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\apbase.mdb;Mode=ReadWrite|Share Deny None;Persist Security Info=False" apbase.Adodc1.RecordSource = "SELECT * FROM clients WHERE fio Like '" & apbase.prodavects.Text & "%' " Set apbase.DataGrid1.DataSource = apbase.Adodc1 apbase.Adodc1.CommandType = adCmdText apbase.Adodc1.CursorType = adOpenDynamic apbase.Adodc1.Refresh где apbase - имя формы prodavects - имя текстового поля, куда выводиться данные о продавце из таблицы Договора и соответсвенно если в поле prodavects написано иванов, то Иванов находиться в таблице Клиенты и в соответсвующем гриде остаётся только Иванов. Но на форме присутсвует ещё и поле pokupatel, куда выводиться имя покупателя (Петров), так вот нужно, чтоб в DataGrid1 отображался и Иванов и Петров. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.04.2009, 12:26 |
|
||
|
Двойной запрос к базе данных
|
|||
|---|---|---|---|
|
#18+
big-dukeMazai-XZ, join ммм, а чуток подробнее можно? :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.04.2009, 12:32 |
|
||
|
Двойной запрос к базе данных
|
|||
|---|---|---|---|
|
#18+
В общем из таблицы, где есть иванов, петров, сидоров и прочие выбрать только, например Иванова и Петрова. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.04.2009, 15:18 |
|
||
|
Двойной запрос к базе данных
|
|||
|---|---|---|---|
|
#18+
Всё, разобрался )))) всё очень просто даже: Adodc1.RecordSource = "SELECT * FROM clients WHERE fio Like '" & prodavects.Text & "%' UNION SELECT * FROM clients WHERE fio Like '" & pokupatelts.Text & "%'" Думаю тема закрыта ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.04.2009, 16:18 |
|
||
|
Двойной запрос к базе данных
|
|||
|---|---|---|---|
|
#18+
и зачем там UNION? можно OR обойтись ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.04.2009, 17:07 |
|
||
|
Двойной запрос к базе данных
|
|||
|---|---|---|---|
|
#18+
Konst_Oneи зачем там UNION? можно OR обойтись Ну не знаю, просто нашёл описание ЮНИОНа, что он объединяет несолько запросов к 1 таблице, а это как раз то, что нужно мне, а OR как я понимаю ищет либо "ТО" либо "Это", а мне нужно и ТО и Это. Потомучто в базе заведомо имеются искомые данные, ибо процесс заполнения БД происходит так: в первую форму программы вносятся данные продавца, покупателя, Транспортного средсва, номер договора и дата. При нажатии кнопки сохранить, происходит следущее: в БД в таблицу Клиенты заносятся ФИО Продавца, паспорт и адрес, тоже самое, касаемо Покупателя. в таблицу Транспорт заносятся данные о Транспортном средстве (вин код, модель и прочее) и в таблицу Договор заносятся ФИО продавца, Фио покупателя, Марка модель ТС, тоесть в итоге получается 3 таблички. Тоесть в таблице Договора есть данные о клиентах и о ТС. Как-то так... =) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.04.2009, 19:25 |
|
||
|
|

start [/forum/topic.php?fid=60&msg=35944618&tid=2161104]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
57ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
65ms |
get tp. blocked users: |
2ms |
| others: | 201ms |
| total: | 372ms |

| 0 / 0 |
