Работа с базами данных (Microsoft Access)

Условие:

почему?

Условие: почему?

Решение:

Предмет: Информационные технологии

Раздел: Работа с базами данных (Microsoft Access)

Ошибка в запросе связана с синтаксической неточностью в выражении DateSerial.

Разбор ошибки

В выражении:

Between DateSerial(Year(Дата0), Month(Дата0)-1, 1) And DateSerial(Year(Дата0), Month(Дата0), 0)
  1. Ошибка в DateSerial(Year(Дата0), Month(Дата0), 0)
    • Функция DateSerial(year, month, day) ожидает корректное значение дня.
    • В DateSerial(Year(Дата0), Month(Дата0), 0) передан 0 в качестве дня, но в Access дни начинаются с 1.
    • В результате Access не может корректно обработать дату.

Исправленный вариант

Чтобы получить последний день предыдущего месяца, следует использовать:

Between DateSerial(Year(Дата0), Month(Дата0)-1, 1) And DateSerial(Year(Дата0), Month(Дата0), 1)-1
  • DateSerial(Year(Дата0), Month(Дата0), 1)-1 вернет последний день предыдущего месяца.

Теперь запрос будет корректно работать в Microsoft Access.

Не нашли нужного вам решения? Оставьте заявку и наши авторы быстро и качественно помогут вам с решением.
Оставить заявку
Работа вам нужна срочно. Не волнуйтесь, уложимся!
  • 22423 авторов готовы помочь тебе.
  • 2402 онлайн