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

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

Вернуться   Форум программистов > Web программирование > SQL, базы данных
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 03.11.2010, 00:11   #1
MSD
Пользователь
 
Регистрация: 23.03.2009
Сообщений: 85
По умолчанию Выборка из двух таблиц

добрый вечер. Ломаю голову как решить следующую задачу: есть две таблицы в Access, Data и Sale в одной клиенты и данные о них, в том числе дисконтная карта, а в другой номер дисконтной карты, покупка, номер чека и т.д. (см вложенный файл), есть еще комбобокс в котором заведены основные названия (мыло, парашок, шетки и.т.д) Задача состоит в следующем, когда я выбираю в комбобокс допустим "парашок" то должны остаться люди которые купили порошок. Как сделать такой запрос ни как не пойму, помогите пожалуйста. Пытаюсь делать через ADO. Спасибо.



Тупанул че та, админы переместите пожалуйста тему в БД в Delphi. Спасибо.
Изображения
Тип файла: jpg Data.JPG (25.1 Кб, 120 просмотров)
Тип файла: jpg Sale.JPG (51.7 Кб, 125 просмотров)

Последний раз редактировалось MSD; 03.11.2010 в 08:28.
MSD вне форума Ответить с цитированием
Старый 03.11.2010, 09:14   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

таблицы спроектированы принципиально неверно!
(я уже молчу про "пАрАшок")

но, формально ответ на Ваш вопрос:
Serge_Bliznykov вне форума Ответить с цитированием
Старый 03.11.2010, 09:45   #3
MSD
Пользователь
 
Регистрация: 23.03.2009
Сообщений: 85
По умолчанию

а почему не правильные таблицы?

Прекращайте ненужное цитирование предыдущих сообщений!
Рекомендую. Помимо общих правил форума есть и дополнения к ним в каждом разделе...
А кроме кнопки "Цитата" внизу есть простое окно для ввода своего сообщения.
Или маленькая правая кнопочка "Быстрый ответ" справа от кнопки "Цитата".
Попадаете туда же.
Модератор

Последний раз редактировалось mihali4; 04.11.2010 в 19:49.
MSD вне форума Ответить с цитированием
Старый 03.11.2010, 12:43   #4
_SERGEYX_
Участник клуба
 
Аватар для _SERGEYX_
 
Регистрация: 07.07.2007
Сообщений: 1,518
По умолчанию

Цитата:
а почему не правильные таблицы?
Потому, что каждый товар должен иметь свой идентификатор и выборка должна производиться по нему, а не по имени товара. Если кто-то напишет "пОрОшок" без ошибок, то ты его не найдешь.
_SERGEYX_ вне форума Ответить с цитированием
Старый 03.11.2010, 13:02   #5
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
_SERGEYX_
+1
Всё именно так.

Ещё добавлю, что поле "Артикул" не понятно к чему/кому относится...
Serge_Bliznykov вне форума Ответить с цитированием
Старый 04.11.2010, 19:28   #6
MSD
Пользователь
 
Регистрация: 23.03.2009
Сообщений: 85
По умолчанию

Артикул просто в кадр попал....) Тот запрос который вы дали выбирает товар в таблице Sale... я вижу товар и номер карты, а как мне узнать имя, фамилию клиента которые находятся в другой таблице? Такой запрос я и сам мог написать.... а как сделать чтобы получить результат из двух таблиц? в обеих таблицах есть номера карт, но в одной нет ФИО клиента а в другой товара.... за то и в той и в другой есть номера карт..... как их совместить, вот в чем вопрос...

Прекращайте ненужное цитирование предыдущих сообщений!
Рекомендую. Помимо общих правил форума есть и дополнения к ним в каждом разделе...
А кроме кнопки "Цитата" внизу есть простое окно для ввода своего сообщения.
Или маленькая правая кнопочка "Быстрый ответ" справа от кнопки "Цитата".
Попадаете туда же.
Модератор

Последний раз редактировалось mihali4; 04.11.2010 в 19:48.
MSD вне форума Ответить с цитированием
Старый 05.11.2010, 09:04   #7
MSD
Пользователь
 
Регистрация: 23.03.2009
Сообщений: 85
По умолчанию

что ни кто не знает как решить задачу? Помогите пожалуйста, нужно очень
MSD вне форума Ответить с цитированием
Старый 05.11.2010, 11:18   #8
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

совсем плохо...
А SQL не пробовали учить?
это список купивших нужный Вам товар
Код:
select * from Data 
  where [Карта] in 
   (select [КартаП] from Sale где товар это пАрашак)
если же нужно и покупателя и товар, который он купил
то указывайте во From обе таблицы и пишите далее условие связи
Код:
 select * from Data, Sale  where Data.[Карта] = sale.[КартаП] and Sale.[Товар] то, что Вам надо...

Последний раз редактировалось Serge_Bliznykov; 05.11.2010 в 11:21.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 07.11.2010, 12:40   #9
MSD
Пользователь
 
Регистрация: 23.03.2009
Сообщений: 85
По умолчанию

Спасибо, все получилось, но теперь другая проблема как оставить только уникальные поля? distinct не срабатывает, запрос проходит норамльно но ни чего не отсеивается? Как быть подскажите?
MSD вне форума Ответить с цитированием
Старый 07.11.2010, 13:45   #10
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

сделайте группировку по тем полям, которые должны "схлопнуться".
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Выборка из 2х таблиц с последующей группировкой Alkatras БД в Delphi 1 05.08.2010 07:33
Выборка данных из нескольких таблиц Alxxxx74 Microsoft Office Excel 1 22.07.2010 08:58
Выборка таблиц mephist Microsoft Office Excel 4 23.09.2009 04:50
Создание запроса, выборка из 4 таблиц! help! angelkisss SQL, базы данных 3 03.02.2008 15:03
Выборка информации из 2 таблиц (SQL) frai БД в Delphi 10 10.11.2007 17:38