如何在SQL服务器中使用系统日期或当前日期
How to use the system date or current date in SQL Server
例如,在一个数据库"Library"中,我想在名为“Sharpstown
”的分支中获取今天到期的书名、借款人姓名和地址?
这就是我做 select 声明的方式 --
SELECT BOOK.Title,BORROWER.Name, BORROWER.Address
FROM BORROWER,BOOK,LIBRARY_BRANCH,BOOK_LOANS
WHERE BOOK.BookID = BOOK_LOANS.BookID AND
LIBRARY_BRANCH.BranchID = BOOK_LOANS.BranchID AND
BOOK_LOANS.CardNo = BORROWER.CardNo AND
LIBRARY_BRANCH.BranchName = 'Sharpstown' AND
BOOK_LOANS.DueDate = now() -- This is where I want to compare the dates
错误是:
'now' is not a recognized built-in function name.
对于 SQL 服务器,使用 getDate()
而不是 now()
。根据 BOOK_LOANS.DueDate
的数据类型,您可能会遇到其他问题,因此您可能需要 CAST
:
... and CAST(BOOK_LOANS.DueDate as date) = CAST(getDate() as date)
SQL 服务器中的“date
”类型有 granularity/precision 天。默认情况下 getDate()
returns "datetime
" 类型的值,具有 granularity/precision 毫秒。
您不能在 SQL 服务器中使用 NOW
。在 SQL 服务器中,我们有 GETDATE()
SELECT BOOK.Title,BORROWER.Name, BORROWER.Address
FROM BORROWER,BOOK,LIBRARY_BRANCH,BOOK_LOANS
WHERE BOOK.BookID = BOOK_LOANS.BookID
AND LIBRARY_BRANCH.BranchID = BOOK_LOANS.BranchID
AND BOOK_LOANS.CardNo = BORROWER.CardNo
AND LIBRARY_BRANCH.BranchName = 'Sharpstown'
AND BOOK_LOANS.DueDate = CONVERT(DATE, CAST(GETDATE() AS VARCHAR(12)), 105)
例如,在一个数据库"Library"中,我想在名为“Sharpstown
”的分支中获取今天到期的书名、借款人姓名和地址?
这就是我做 select 声明的方式 --
SELECT BOOK.Title,BORROWER.Name, BORROWER.Address
FROM BORROWER,BOOK,LIBRARY_BRANCH,BOOK_LOANS
WHERE BOOK.BookID = BOOK_LOANS.BookID AND
LIBRARY_BRANCH.BranchID = BOOK_LOANS.BranchID AND
BOOK_LOANS.CardNo = BORROWER.CardNo AND
LIBRARY_BRANCH.BranchName = 'Sharpstown' AND
BOOK_LOANS.DueDate = now() -- This is where I want to compare the dates
错误是:
'now' is not a recognized built-in function name.
对于 SQL 服务器,使用 getDate()
而不是 now()
。根据 BOOK_LOANS.DueDate
的数据类型,您可能会遇到其他问题,因此您可能需要 CAST
:
... and CAST(BOOK_LOANS.DueDate as date) = CAST(getDate() as date)
SQL 服务器中的“date
”类型有 granularity/precision 天。默认情况下 getDate()
returns "datetime
" 类型的值,具有 granularity/precision 毫秒。
您不能在 SQL 服务器中使用 NOW
。在 SQL 服务器中,我们有 GETDATE()
SELECT BOOK.Title,BORROWER.Name, BORROWER.Address
FROM BORROWER,BOOK,LIBRARY_BRANCH,BOOK_LOANS
WHERE BOOK.BookID = BOOK_LOANS.BookID
AND LIBRARY_BRANCH.BranchID = BOOK_LOANS.BranchID
AND BOOK_LOANS.CardNo = BORROWER.CardNo
AND LIBRARY_BRANCH.BranchName = 'Sharpstown'
AND BOOK_LOANS.DueDate = CONVERT(DATE, CAST(GETDATE() AS VARCHAR(12)), 105)