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

В предоставленной ошибке очевидно, что в SQL-запросе допущена синтаксическая ошибка. Рассмотрим ваш запрос:
SELECT Товары.[Наименование товара] AS [Товар], Товары.[Цена единицы], Склад.[Наименование товара] AS [Склад_Наименование товара], Склад.[Количество]
FROM Товары, Склад
WHERE [Товары].[Наименование товара] = [Склад].[Наименование товара] AND [Товары].[Цена единицы]*[Склад].[Количество] AS [Сумма];Ошибка заключается в использовании ключевого слова AS в предложении WHERE. В SQL нельзя присваивать псевдонимы (через AS) в условиях фильтрации. Это действие нужно выполнять в блоке SELECT.
Для корректной работы нужно переместить вычисление суммы в блок SELECT, а не в WHERE. Исправленный запрос будет выглядеть так:
SELECT
Товары.[Наименование товара] AS [Товар],
Товары.[Цена единицы],
Склад.[Наименование товара] AS [Склад_Наименование товара],
Склад.[Количество],
[Товары].[Цена единицы]*[Склад].[Количество] AS [Сумма]
FROM
Товары, Склад
WHERE
[Товары].[Наименование товара] = [Склад].[Наименование товара];Перенос вычисления в SELECT: Выражение [Товары].[Цена единицы]*[Склад].[Количество] AS [Сумма] перемещено в блок SELECT, так как это вычисление используется для вывода данных, а не для фильтрации.
Условия в WHERE: Условия в WHERE содержат только логические выражения, такие как сравнение [Товары].[Наименование товара] = [Склад].[Наименование товара].
Запрос теперь будет выполняться корректно, и результатом будет таблица, содержащая: