Я пытаюсь ежемесячно суммировать суммы продаж за каждый день недели. Я считаю, что функция Weekday в Access может быть использована для этого. Код функции Weekday в запросе ниже не работает. Как следует пересмотреть синтаксис функции дня недели, чтобы суммировать итоги продаж каждый день недели? (Запрос ниже был обновлен с правильным кодом и будет возвращать правильные результаты.)Доступ, Совокупные суммы за каждый день недели на ежемесячной основе
SELECT Format(DatePart("m",months.month_start),"00") & "/" & Year(months.month_start) AS [Month/Year],
(SELECT Round(Nz(Sum(sales_receipt.SELLING_PRICE*sales_receipt.quantity),0),2)
FROM SALES_RECEIPT
WHERE SALES_RECEIPT.SALE_DATE between months.month_start and months.month_end and weekday(sale_date) = 1) AS [Sunday Sales Total],
(SELECT Round(Nz(Sum(sales_receipt.SELLING_PRICE*sales_receipt.quantity),0),2)
FROM SALES_RECEIPT
WHERE SALES_RECEIPT.SALE_DATE between months.month_start and months.month_end and weekday(sale_date) = 2) AS [Monday Sales Total],
(SELECT Round(Nz(Sum(sales_receipt.SELLING_PRICE*sales_receipt.quantity),0),2)
FROM SALES_RECEIPT
WHERE SALES_RECEIPT.SALE_DATE between months.month_start and months.month_end and weekday(sale_date) = 3) AS [Tuesday Sales Total],
(SELECT Round(Nz(Sum(sales_receipt.SELLING_PRICE*sales_receipt.quantity),0),2)
FROM SALES_RECEIPT
WHERE SALES_RECEIPT.SALE_DATE between months.month_start and months.month_end and weekday(sale_date) = 4) AS [Wednesday Sales Total],
(SELECT Round(Nz(Sum(sales_receipt.SELLING_PRICE*sales_receipt.quantity),0),2)
FROM SALES_RECEIPT
WHERE SALES_RECEIPT.SALE_DATE between months.month_start and months.month_end and weekday(sale_date) = 5) AS [Thursday Sales Total],
(SELECT Round(Nz(Sum(sales_receipt.SELLING_PRICE*sales_receipt.quantity),0),2)
FROM SALES_RECEIPT
WHERE SALES_RECEIPT.SALE_DATE between months.month_start and months.month_end and weekday(sale_date) = 6) AS [Friday Sales Total],
(SELECT Round(Nz(Sum(sales_receipt.SELLING_PRICE*sales_receipt.quantity),0),2)
FROM SALES_RECEIPT
WHERE SALES_RECEIPT.SALE_DATE between months.month_start and months.month_end and weekday(sale_date) = 7) AS [Saturday Sales Total]
FROM (SELECT DateSerial(Year(sale_date), Month(sale_date), 1) AS month_start,
DateAdd("d", -1, DateSerial(Year(sale_date), Month(sale_date) + 1, 1)) AS month_end
FROM SALES_RECEIPT
WHERE sale_date between #1/1# And #12/31#
GROUP BY Year(sale_date), Month(sale_date)) AS months;
объяснить симптомы "не работает". Пример набора данных того, что вы хотели бы, чтобы он выглядел, и того, что он на самом деле появляется, как – dbmitch
Когда запрос запущен, появляется поле «ВВОД ПАРАМЕТРОВ ЗНАЧЕНИЕ» с запросом «date_value». Если я введу дату date_value 1, которая является воскресенью, каждый день недели за январь имеет значение $ 2016.62 ($ 2016.62 - это общая сумма продаж за все 31 день в январе). Воскресенье должно быть $ 0, потому что магазин закрыт в воскресенье. Помимо воскресенья, каждый день должен иметь менее 2016,62 доллара США, но сумма итогов за каждый день недели должна составлять до 2016,62 доллара за январь. –