![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 11.05.2011
Сообщений: 19
|
![]()
Есть такие таблицы
![]() Задание звучит следующее: 3.2. Выбрать все продажи по некоторому типу товара (задается пользователем) до 01.01.06. Мой запрос следующий: SELECT Продажи.Код_товара, Дата, Код_продажи, Количество FROM ( Продажи INNER JOIN Товары ON Товары.Код_товара = Продажи.Код_товара) INNER JOIN Типы ON Товары.Код_типа = Типы.Код_типа WHERE (Тип_товара='Монитор' OR Тип_товара='Принтер') OR Тип_товара='Факс-модем' Ошибка в том что, он запрашивает что ввести, но что бы я не вводила он просто выводит всю таблицу "Продажи".(( в чем ошибка ? подскажите пожалуйста((( Пы.Сы: простите за ламерский вопрос((( |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]()
во-первых, у вас в запросе абсолютно бессмыслено расставлены круглые скобки (но это, скорее всего, не является причиной ошибки)
а во-вторых, у Вас поля "Код типа" "Тип товара" "Код товара" содержать в наименовании ПРОБЕЛ. поэтому Access и не находит нужных полей. Все такие поля нужно писать в запросе прямо с пробелом, только не забывать брать в квадратные скобки: Код:
|
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 11.05.2011
Сообщений: 19
|
![]()
Данная картинка, вырезана из книги. В самой бд я все названия таблиц, содержащие больше двух слов, писала с нижним подчеркиванием.
Да и он выводит таблицу. Но только не по условию, а всю. Какой то я моментик пропустила( Вот не могу понять какой(( |
![]() |
![]() |
![]() |
#4 |
Участник клуба
Регистрация: 10.08.2009
Сообщений: 1,796
|
![]()
Здравствуйте pr1me222.
Если не брать во внимание SQL конструкцию источника, а только условие отбора WHERE (Тип_товара='Монитор' OR Тип_товара='Принтер') OR Тип_товара='Факс-модем' то оно не совсем отвечает заданию "..по некоторому типу товара (задается пользователем) до 01.01.06.." Установленным типам соответствуют все записи таблицы Продажи Попробуйте его изменить подобным образом: Код:
|
![]() |
![]() |
![]() |
#5 | |
Пользователь
Регистрация: 11.05.2011
Сообщений: 19
|
![]() Цитата:
АААААААААААААААА!!!!Спааааасибо Вам огромнооооое ![]() ![]() Окончательный вариант запроса следующий: SELECT DISTINCT Продажи.Код_товара, Количество, Дата, Фирма, Тип_товара FROM (Продажи INNER JOIN Товары ON Товары.Код_товара = Продажи.Код_товара) INNER JOIN Типы ON Товары.Код_типа = Типы.Код_типа WHERE Продажи.Дата <= #1/1/2006# And Тип_товара Like [Введите тип товара] |
|
![]() |
![]() |
![]() |
#6 |
Участник клуба
Регистрация: 10.08.2009
Сообщений: 1,796
|
![]()
pr1me222, [Введите тип товара] является используемым параметром запроса
если хотите создать красивую/правильную конструкцию явно объявите его, т.е в начале SQL конструкции добавьте следующую строку: Код:
![]() Евгений. P.S. на будущее: для удобочитаемости выкладываемые конструкции заключайте в тэги [соde]...[/соde] для этого на панели расположена кнопка - # |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
SQL запрос на выборку | kolosok2590 | Microsoft Office Access | 7 | 16.01.2013 16:57 |
Запрос на выборку (SQL) | stck | Помощь студентам | 1 | 13.04.2012 13:59 |
SQL запрос на выборку | Vervolf | SQL, базы данных | 5 | 31.07.2011 15:35 |
Сложный запрос на выборку SQL | simka16 | Помощь студентам | 0 | 21.02.2011 18:43 |
sql-запрос на выборку данных | kity | Помощь студентам | 3 | 07.06.2010 17:18 |