[英]Getting DateDiff from stored procedure with different columns of same columns
首先你好,我管理一家書店,我想顯示我的書與出版日期和出版刪除日期。 我想顯示這兩天之間的日子。 例如這是我的存儲過程:
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[spLibrary]
AS
BEGIN
DECLARE @Tax int, @forwardDate DATETIME
SET @Tax = 100
SET @forwardDate = 7
SELECT
b.BookName BookName,
b.BookAuthor BookAuthor,
b.BookPrice PriceWithoutTax,
b.BookPrice + @Tax PriceWithTax,
b.BookDate PublisDate,
b.BookDate + @forwardDate PublishRemoveDate
FROM
Book b
END
我想看看 PublishDate 和 PublisRemoveDate 之間的區別。 我嘗試但它說多標識符錯誤。 你能幫我么。 從現在開始非常感謝!
您可以在 SP 中向 select 添加新字段
GO
alter PROCEDURE [dbo].[spLibrary]
AS
BEGIN
declare @Tax int, @forwardDate DATETIME
set @Tax = 100
set @forwardDate = 7
SELECT
b.BookName BookName,
b.BookAuthor BookAuthor,
b.BookPrice PriceWithoutTax,
b.BookPrice + @Tax PriceWithTax,
b.BookDate PublisDate,
b.BookDate + @forwardDate PublishRemoveDate,
datediff(day, BookDate, b.BookDate + @forwardDate) as DiffDays
from
Book b
END
我懷疑您想將@forwardDate
天數添加到BookDate
。 如果是這樣,您應該將變量聲明為int
,然后使用dateadd()
:
dateadd(day, @forwarDate, BookDate) as PublishRemoveDate
另一方面,如果您想要日期bookDate
和PublishRemoveDate
之間的日期差異,請使用datediff()
:
datediff(day, BookDate, PublishRemoveDate) as diff
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.