SQL-запросы в Microsoft Access

Условие:

исправить

Условие: исправить

Решение:

Предмет: Базы данных

Раздел: SQL-запросы в Microsoft Access

Ошибка в запросе

Ошибка связана с тем, что в Microsoft Access не поддерживаются функции DATE_SUB и CURDATE(), которые используются в MySQL. В Access для работы с датами следует использовать функцию Date() и оператор DateAdd().


Исправленный SQL-запрос для Microsoft Access:

SELECT Лекарства.название, Продажи.дата_продажи, Продажи.цена_продажи
FROM Лекарства 
INNER JOIN Продажи ON Лекарства.код_лекарства = Продажи.код_лекарства
WHERE Продажи.дата_продажи >= DateAdd("m", -1, Date());

Объяснение исправлений:

  1. CURDATE() заменен на Date()

    • В MySQL используется CURDATE(), но в Access аналогом является Date(), который возвращает текущую дату.
  2. DATE_SUB(CURDATE(), INTERVAL 1 MONTH) заменен на DateAdd("m", -1, Date())

    • В Access нет DATE_SUB(), вместо этого применяется DateAdd("m", -1, Date()), что означает "вычесть 1 месяц из текущей даты".

Теперь запрос должен корректно выполняться в Microsoft Access.

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