powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / access (если CODE=sea то NEW_DATE = DATE+45)
25 сообщений из 25, страница 1 из 1
access (если CODE=sea то NEW_DATE = DATE+45)
    #32367452
МашаТ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ДОБРОЕ УТРО.
Спасибо всем тем кто пытался мне помочь (вчера), может кто-то поможет мне и сегодня?...

1.У меня есть таблица ORDER с полями PRODUCT P/N DATE QTY CODE

мне нужно построить querie на основе таблицы ORDER добавив новое поле

NEW_DATE в котором я проверяю что если CODE=sea то NEW_DATE = DATE+45

если CODE=D то NEW_DATE = DATE+1

если CODE=CD то NEW_DATE = DATE+14


2.Mожно ли создать title list в котором будет кнопка при нажатии на нее она возьмет таблицу из excel и скопирует ее в таблицу в access (import table).

спасибо
...
Рейтинг: 0 / 0
access (если CODE=sea то NEW_DATE = DATE+45)
    #32367463
Фотография Geo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Плохое название - "Order". У access есть такое ключевое поле.
Плохое название - "Date".

select *, iif(Code="sea",dateadd("d",45,[Date]),iif(Code="D",dateadd("d",1,[Date]),iif(Code="CD",dateadd("d",14,[Date]),null))) as NEW_DATE from [ORDER];
...
Рейтинг: 0 / 0
access (если CODE=sea то NEW_DATE = DATE+45)
    #32367464
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
1. select *, DATE + switch(CODE='sea', 45, CODE='D', 1, CODE='CD', 14) as NEW_DATE from ORDER

2. Кто такое title list? Если речь просто о форме, то ответ - да.
...
Рейтинг: 0 / 0
access (если CODE=sea то NEW_DATE = DATE+45)
    #32367465
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Обпозднел.
...
Рейтинг: 0 / 0
access (если CODE=sea то NEW_DATE = DATE+45)
    #32367466
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
GeoУ access есть такое ключевое поле.
Точнее, слово. Правда, не order, а order by.
...
Рейтинг: 0 / 0
access (если CODE=sea то NEW_DATE = DATE+45)
    #32367468
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мадам, а можно называть топики как-нить по другому? В этом форуме все (ну или почти все) про аксес

1.
Код: plaintext
1.
2.
3.
Select *, Switch(CODE= "sea" , [DATE]+ 45 , 
                        CODE= "D" , [DATE]+ 1 , 
                        CODE= "CD" , [DATE]+ 14 ) As NEW_DATE
From ORDER 


2. Запустите поиск по форуму по словам "импорт из экселя" (или "экспорт в эксель"). Оно кучу примеров выдаст.
Правда я не понял что значит "создать title list". Этот title list - какой-то неизвестный науке зверь.
...
Рейтинг: 0 / 0
access (если CODE=sea то NEW_DATE = DATE+45)
    #32367470
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Апаздал безобразно

Модераторы, нам что, делать перед Новым Годом нечего?
...
Рейтинг: 0 / 0
access (если CODE=sea то NEW_DATE = DATE+45)
    #32367471
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Лох, плагиируешь. :^)))
...
Рейтинг: 0 / 0
access (если CODE=sea то NEW_DATE = DATE+45)
    #32367473
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
И правда прикольно. Сидят одни модераторы. То ли самые сознательные, то ли самые пристрастившиеся...
...
Рейтинг: 0 / 0
access (если CODE=sea то NEW_DATE = DATE+45)
    #32367474
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Зато про импорт из экселя только я заметил
...
Рейтинг: 0 / 0
access (если CODE=sea то NEW_DATE = DATE+45)
    #32367475
Фотография Geo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
:))

2BC
swith работает медленнее, чем iif - он вычисляет все свои аргументы независимо, где находится подходящий.
...
Рейтинг: 0 / 0
access (если CODE=sea то NEW_DATE = DATE+45)
    #32367476
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
То ли самые сознательные, то ли самые пристрастившиеся...
Я так вообще на работе еще. Сижу, глюков жду... а их все нет...
...
Рейтинг: 0 / 0
access (если CODE=sea то NEW_DATE = DATE+45)
    #32367477
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Нифига. Я и заметил, и ответил.

яда
...
Рейтинг: 0 / 0
access (если CODE=sea то NEW_DATE = DATE+45)
    #32367479
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
2 Geo:
Iif тоже вычисляет все аргументы.

2 Лох:
Я тоже на работе. И завтра. :^)
...
Рейтинг: 0 / 0
access (если CODE=sea то NEW_DATE = DATE+45)
    #32367480
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Гео
Неправ ты немного
Во-первых. IIf тоже вычисляет все свои аргументы
Во-вторых. При использовании в запросах и switch, и iif вычисляют только то, что нужно
можешь даже, например, третий аргумент в IIf'е не указывать - в sql прокатит, а в VB ошибка синтаксиса
...
Рейтинг: 0 / 0
access (если CODE=sea то NEW_DATE = DATE+45)
    #32367482
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да что такое, апять апаздал!!!
...
Рейтинг: 0 / 0
access (если CODE=sea то NEW_DATE = DATE+45)
    #32367484
Фотография Нуф-нуф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Драсте... Ну и мои 5 копеек :)
По поводу первого вопроса. ИМХО самое простое и производительное решение - это создать три запроса на обновление, в каждом из которых указать условие отбора записей и "формулу" изменения поля NEW_DATE. Так, для первого запроса условие будет "WHERE (CODE="sea")", а формула "NEW_DATE = DATE+45". Для двух других запросов - соответствующие параметры.
Если, всё же, необходимо выполнить действие непременно одним запросом (хотя я не вижу такой необходимости в любом случае), придется пользовать конструкции на базе iif(условие;действие_если_условие_истенно;действие_если_условие_ложно). Один этот запрос будет работать дольше, чем три вышеописанных простых запроса (ИМХО).

По поводу второго - я пасс.
...
Рейтинг: 0 / 0
access (если CODE=sea то NEW_DATE = DATE+45)
    #32367485
Фотография Geo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2ЛП, ВС
Про iif, что он в запросах рабает как if, я знал, а про switch - нет :)
Спасибо.
...
Рейтинг: 0 / 0
access (если CODE=sea то NEW_DATE = DATE+45)
    #32367488
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здарова Нуф!
И тебя тоже с наступающим!

Ты конечно, все правильно написал, но только
а) Ощутимый выигрыш в скорости будет только при наличии индекса по полю Code
б) Где ты увидел запрос на обновление?
...
Рейтинг: 0 / 0
access (если CODE=sea то NEW_DATE = DATE+45)
    #32367501
Фотография Нуф-нуф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>И тебя тоже с наступающим!
Я вчера наступал с поздравляющим... В смысле поздравлял с наступающим :)

>б) Где ты увидел запрос на обновление?
Ух блин... Точно нету... Человеку в запросе это дело надо получить? Яяяяясна... Хотя-хотя. Ведь где-то же я это прочитал! Где-то видел! Значит, меня обманули!!! Заговор Модераторов!!! Редактиииируууууууююют! //типа, перевод стрелок с собственной невнимательности
Таким образом, мой предыдущий пост можно игнорировать :)

Еще раз всех с наступающим!

Отдельно для ЛП:
С наступающим! :)

//как бы мне еще 30 постов за сёни набрать, что бы в этом году на покой успеть? :)
...
Рейтинг: 0 / 0
access (если CODE=sea то NEW_DATE = DATE+45)
    #32367528
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Продолжение тут:\r
\r
/topic/67037
...
Рейтинг: 0 / 0
access (если CODE=sea то NEW_DATE = DATE+45)
    #32367530
Alexus12
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Про глюки IIF можно прочитать здесь:\r
\r
/topic/40682&hl=iif
...
Рейтинг: 0 / 0
access (если CODE=sea то NEW_DATE = DATE+45)
    #32367538
Фотография Geo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Alexus12
Это не глюки, а "документированные особенности" :)
В справке по iif, switch, choose это написано. Там, правда, не написано (хотя здесь и вообще на форуме не раз говорили), что в запросах iif, в отличие от него же при использовании в коде, работает аналогично if в коде. Т.е. вычисляется условие, и только одно из результирующих выражений.
...
Рейтинг: 0 / 0
access (если CODE=sea то NEW_DATE = DATE+45)
    #32367554
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Гео
Там, правда, не написано ...
Написано, Гео, написано. Только в аглицком хелпе. Кусок которого, кстати, приведен в топике по ссылке
...
Рейтинг: 0 / 0
access (если CODE=sea то NEW_DATE = DATE+45)
    #32367568
Фотография Geo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЛП, там не хелпа кусок, а msdn'а.
...
Рейтинг: 0 / 0
25 сообщений из 25, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / access (если CODE=sea то NEW_DATE = DATE+45)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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