gpt4 book ai didi

sql-server - 以日期为参数在T-SQL中执行存储过程

转载 作者:行者123 更新时间:2023-12-02 01:02:04 26 4
gpt4 key购买 nike

<分区>

我需要制作一个存储过程,它将供应商名称、开始日期和结束日期作为参数,并计算给定时间间隔内该供应商的总收入。我正在使用罗斯文。该过程如下所示:

CREATE PROC usp_GetTotalIncomeByPeriod (
@companyName nvarchar(40),
@startDate date,
@endDate date)
AS
BEGIN
SELECT SUM(od.UnitPrice * od.Quantity * (1 - od.Discount))
FROM Orders o
JOIN [Order Details] od
ON o.OrderId = od.OrderId
JOIN Products p
ON od.ProductID = p.ProductID
JOIN Suppliers s
ON p.SupplierID = s.SupplierID
WHERE s.CompanyName = @companyName
AND (o.OrderDate BETWEEN @startDate AND @endDate);
END
GO

问题是我无法使用以下调用实际执行它:

EXEC dbo.usp_GetTotalIncomeByPeriod @companyName = 'Exotic Liquids', 
@startDate = DATEFROMPARTS(1900, 01, 01),
@endDate = DATEFROMPARTS(2000, 1, 1);

DATEFROMPARTS 函数本身似乎运行良好,但我无法设法使其作为参数运行。它不断给我“1900 年附近的语法错误”。我想念什么?

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com