LEADERSOFT.ru Разработка на заказ программ и сайтов
Форумы по информационным технологиям
 
Регистрация  |  Вход
left
Форумы Минимизировать
ПоискСписок форумов
  Программирование  Microsoft Access. Файлы mdb и accdb  Сложные запросы...
 Сложные запросы
 
 23.11.2008 1:59:14
Grom555
4 сообщения


Сложные запросы

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

Для создания выражения подсчета стоимости услуг с учетом времени суток ее предоставления необходимо воспользоваться функцией IIf (), Функция IIf(выражение, truepart, falsepart) содержит 3 аргумента:

первый аргумент – «выражение» – условие проверки, в какое время был сделан звонок (от 8:00:00 до 23:59:59 – учитывается дневной тариф, а иначе – ночной тариф). Условие составляется с учетом знака «#» и программирования сложных условий с помощью операторов AND и OR;
второй аргумент – выражение, которое будет возвращено, если условие будет оценено как True (Да);
третий аргумент – значение или выражение, которое будет возвращено, если условие будет оценено как False (Нет).
 24.11.2008 15:12:18
Admin1
731 сообщения
1-ый


Re: Сложные запросы

SELECT IIf([hh]>=8 And [hh]<24,'День','Ночь') AS Status, DatePart("h",[mydate]) AS hh
FROM myTable;

P.S. myTable - таблица, mydate - поле со временем

 25.11.2008 22:17:23
Grom555
4 сообщения


Re: Сложные запросы

Спасибо большое за ответ. И прошу прощения за не точные данные. Данный запрос необходимо сделать на основе таблицы: Кодуслуги; НаименованиеУслуги; ТарифД; ТарифН; Нужно создать выражение подсчета стоимости услуг с учётом времени суток ее предоставления необходимо воспользоваться функцией IIf()

Я составил такое выражение: Стоимость: IIf(#8:00:00#>=#23:59:59# Or #23:59:59:#; ТарифД * ДлитМин; ТарифН * ДлитМин)

Он у меня считает стоимость  по Дневному тарифу (ТарифД)  не  видит разниццы между  Днём и ночью.

Подскажите пожалуйста где моя ошибка и как ее исправить. Спасибо.

 26.11.2008 10:45:51
Admin1
731 сообщения
1-ый


Re: Сложные запросы

Логику языка программирования надо изучить. A>20 or A<100, а Вы пишите A>20 or 100. Или 100 - всегда истинное выражение

 26.11.2008 21:21:37
Grom555
4 сообщения


Re: Сложные запросы

 Составил такое выражение:    Стоимость: IIf(#8:00:00#<#23:59:59# Or #23:59:59:#>#8:00:00#; ТарифД * ДлитМин; ТарифН * ДлитМин)  Результат тот же..

  Программирование  Microsoft Access. Файлы mdb и accdb  Сложные запросы...
ПоискПоиск  Список форумовСписок форумов  
right