Форум программистов, компьютерный форум, киберфорум
Microsoft Access
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
Заблокирован
1

Как сделать запрос с условием Null

20.05.2014, 18:23. Показов 559. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день! Есть такой вот запросик:

VB.NET
1
daAdap = New OleDb.OleDbDataAdapter("SELECT tblBooks.ID, tblBooks.Title, tblAuthor.Author, tblPublishingHouse.PublishingHouse, tblBooks.PublishingYear, tblBooks.PagesCount, tblBooks.BooksCount FROM tblPublishingHouse INNER JOIN (tblAuthor INNER JOIN tblBooks ON tblAuthor.ID = tblBooks.Author) ON tblPublishingHouse.ID = tblBooks.PublishingHouse WHERE PublishingYear BETWEEN " & txtS.Text & " AND " & txtPo.Text & "", Conn)
SQL
1
"SELECT tblBooks.ID, tblBooks.Title, tblAuthor.Author, tblPublishingHouse.PublishingHouse, tblBooks.PublishingYear, tblBooks.PagesCount, tblBooks.BooksCount FROM tblPublishingHouse INNER JOIN (tblAuthor INNER JOIN tblBooks ON tblAuthor.ID = tblBooks.Author) ON tblPublishingHouse.ID = tblBooks.PublishingHouse WHERE PublishingYear BETWEEN " & txtS.Text & " AND " & txtPo.Text & ""
Тут возникает вопрос, если в поля txtS.Text и txtPo.Text не введены данные, набор записей пуст остается. Как сделать запрос с условием Null в таком варианте?

P.S. База аксик.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.05.2014, 18:23
Ответы с готовыми решениями:

Как создать запрос с условием выбора определенного столбца из таблицы
Существует таблица, названия столбцов : персонал,январь, февраль, ... декабрь. При формировании...

Пожалуйста подскажите как сделать БД АВИАКОМПАНИИ с таким условием:
Атрибут НОМЕР РЕЙСА должен принадлежать только одной АВИАКОМПАНИИ атрибут НОМЕР РЕЙСА не должен...

Определить какие поля сделать в таблице и как сделать запрос
Доброго времени суток! Задание: «Теннисисты» 1. Сведения: фамилия и имя теннисиста, название...

Запрос с условием
Ситуация такая: есть таблица Студенты(Фамилия, пол, дата рожд), надо сделать запрос чтобы...

2
Эксперт MS Access
26806 / 14485 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
20.05.2014, 18:58 2
Не знаю вбнетовского символа переноса строки кода, поэтому отформатированный текст запроса без него

По-видимому, поля формы txtS и txtPo задают дату? Тогда идея в том, чтобы проверять на "пустоту" поле формы и, если оно пустое - Len(txtS.Text)=0, то выдавать все все. Как будто этого фильтра нет. У поля txtS минимальным значение задаем 0 (31 января 1899), а для поля txtPo задаем 100000. Это день в очень далеком будущем
Также не знаю нетовского аналога функции Len, поэтому пишу ВБшный
Visual Basic
1
2
3
4
5
6
7
8
9
"SELECT tblBooks.ID, tblBooks.Title, tblAuthor.Author, tblPublishingHouse.PublishingHouse,
     tblBooks.PublishingYear,tblBooks.PagesCount, tblBooks.BooksCount 
 FROM tblPublishingHouse 
     INNER JOIN (tblAuthor 
     INNER JOIN tblBooks 
     ON tblAuthor.ID = tblBooks.Author) 
     ON tblPublishingHouse.ID = tblBooks.PublishingHouse 
 WHERE PublishingYear BETWEEN iif(' & Len(txtS.Text)=0 & ', 0, ' & txtS.Text 
      & ')  AND iif(' & Len(txtPo.Text)=0 & ', 1000000, ' & txtPo.Text)"
Внутри запроса заменил символы кавычек на апострофы

И еще. Jet SQL правильно принимает даты в американском формате - mm/dd/yyyy. Если дата построена иначе, могут быть ошибки
1
Заблокирован
20.05.2014, 19:49  [ТС] 3
mobile, Все супер, спасибо! Однако, в полях прости я не сразу написал, там просто годы, то есть 1999 и так далее.

Добавлено через 2 минуты
Visual Basic
1
2
    Me.[sql_GrafRabot_].Form.RecordSource = "SELECT Ìàãàçèí.[Íàçâàíèå ìàãàçèíà], Ñîòðóäíèê.Äîëæíîñòü, Ñîòðóäíèê.ÔÈÎ, [Ãðàôèê ðàáîòû].Äåíü, [Ãðàôèê ðàáîòû].Âðåìÿ FROM (Ìàãàçèí INNER JOIN Ñîòðóäíèê ON Ìàãàçèí.[Êîä ìàãàçèíà]=Ñîòðóäíèê.[Êîä ìàãàçèíà]) INNER JOIN [Ãðàôèê ðàáîòû] ON Ñîòðóäíèê.[Êîä ñîòðóäíèêà]=[Ãðàôèê ðàáîòû].[Êîä ñîòðóäíèêà] WHERE Äåíü = #" & chT(Ïîëå3.Value) & "#"
    Me.[sql_GrafRabot_].Requery
До кучи вопрос, как поступить тут!? Не ищет если писать .Value и если писать .Text пишет не установлен фокус!
0
20.05.2014, 19:49
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.05.2014, 19:49
Помогаю со студенческими работами здесь

Запрос с условием
Как записать условие в запросе для следующей задачи: рассчитать скидку. Скидка предоставляется...

Запрос с условием
Есть запрос который высчитывает дату следующей аттестации по дате пройденной аттестации, но в...

Запрос с условием
Подскажите пожалуйста, как сделать запрос с условием, в котором отобразилась бы определённая...

Запрос на выборку с условием
Здраствуйте. У меня есть таблица Кабинеты: Код - Счетчик Название - Текстовый ОтветственноеЛицо...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru