Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Сложный запрос в базу акцес / 10 сообщений из 10, страница 1 из 1
15.11.2003, 12:55
    #32325363
AL12
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сложный запрос в базу акцес
Привет всем !
Нужен совет неопытному бедолаге.
Из vb-6
Пишу запрос :
querr = "SELECT *, (([Tariff]*([SpeakTime]/60)+0.01)*1.18) AS [summa] FROM [Query1] WHERE [Code] = " & qwqw & " AND [Date] BETWEEN #" & DTPicker1.Value & "# AND #" & DTPicker2.Value & "#"
Tariff -- необходимо выбирать из другой таблицы этой же базы,
но с условим если Time1 то Tariff1, Time2 то Tariff2, Time3 то Tariff3 .
...
Рейтинг: 0 / 0
15.11.2003, 16:26
    #32325432
ulis
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сложный запрос в базу акцес
ну а кто тебе запрещает использовать вложенный запрос? Т.е. вместо своего [Tariff] вставляешь (SELECT МояТаблицаТарифов.Tariff FROM МояТаблицаТарифов WHERE МоиУсловияОтбораТарифов)
...
Рейтинг: 0 / 0
15.11.2003, 18:57
    #32325466
AL12
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сложный запрос в базу акцес
Ситуация такая в Таблице Query1 есть Time , которое при условии1 06:00:00 до 20:00:00 из таблицы Тариф забрать ТарифА, при условии2 20:00:00 до 06:00:00 из таблицы Тариф забрать ТарифБ.
Твой вариант я не понял .
...
Рейтинг: 0 / 0
15.11.2003, 20:33
    #32325488
ulis
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сложный запрос в базу акцес
В условиях отбора тарифа можно также использовать функцию iif. Т.е. я так понял, в таблице тарифов есть два вида тарифов
...
Рейтинг: 0 / 0
16.11.2003, 12:50
    #32325602
AL12
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сложный запрос в базу акцес
Т. е.?
В SELECT вставлять "IF THEN и т.д. "?
???
Если это так, покажи пожалуста как это сделать.
Четно у меня опыта "0".
...
Рейтинг: 0 / 0
17.11.2003, 14:47
    #32326298
AL12
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сложный запрос в базу акцес
Народ ну подскажите ктонибудь!
...
Рейтинг: 0 / 0
17.11.2003, 14:50
    #32326301
tpg
tpg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сложный запрос в базу акцес
Что подсказать то? Синтаксис ф-ии IIF() ?
...
Рейтинг: 0 / 0
17.11.2003, 14:57
    #32326318
AL12
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сложный запрос в базу акцес
как этот иф и тен впихнуть в запрос вместо тариф и чтобы не выскакивали ошибки???
...
Рейтинг: 0 / 0
17.11.2003, 15:02
    #32326330
tpg
tpg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сложный запрос в базу акцес
Это не ИФ , а ИИФ

IIF(логическое_выражение, значение_возвращаемое_при_истине, значение_возвращаемое_при_лжи)

т.е. если логическое_выражение вернет True, то ф-ия IIF(), возвратит значение_возвращаемое_при_истине, иначе - значение_возвращаемое_при_лжи
...
Рейтинг: 0 / 0
17.11.2003, 15:05
    #32326337
Senin Viktor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сложный запрос в базу акцес
А исчо можно Switch в справке поискать
Да и заодно Choose тоже вданным случае катит


>как этот иф и тен впихнуть в запрос вместо тариф и чтобы не выскакивали ошибки???

Так что надо? Чтобы работало или чтобы ошибки не выскакивали? Если второе, то проще

===

Select IIF(Time1=1;Tarif1;Тариф2), ....
select Switch(Time1=1;tarif2;Time1=2;tarif2), ...
select Choose (Time1;tarif1;tarif2;tarif3),...

===
Но лучше, если была бы отдельная таблица с привязкой тарифов к времени - тогда простым запросом без всяких извратов (а IIF - IMHO - в данном случае изврат, от плохой структуры)
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Сложный запрос в базу акцес / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]