Sql server 我可以为不同的日期格式(SQL Server)编写查询吗

Sql server 我可以为不同的日期格式(SQL Server)编写查询吗,sql-server,datetime,Sql Server,Datetime,桌子 书(ISBN、作者ID、作者姓名、标题、无副本) 学生(学生ID、姓名、地址、课程) 贷款(学生ID、ISBN、到期日) 编写一条SQL语句,列出所有借书过期的学生的学生ID(在SQL查询中,您可以使用到期日期>“2-0CT-2008”来测试一本书是否过期) 如果上面的查询正确,我可以用上面的格式而不是 SELECT Student_Id FROM LOAN WHERE Due_Date > '2-10-2008' 根据服务器的区域设置2-10-2008可能表示2月10

桌子

  • (ISBN、作者ID、作者姓名、标题、无副本)
  • 学生
    (学生ID、姓名、地址、课程)
  • 贷款
    (学生ID、ISBN、到期日)
编写一条SQL语句,列出所有借书过期的学生的学生ID(在SQL查询中,您可以使用到期日期>“2-0CT-2008”来测试一本书是否过期)

如果上面的查询正确,我可以用上面的格式而不是

SELECT Student_Id
FROM   LOAN
WHERE  Due_Date > '2-10-2008' 

根据服务器的区域设置
2-10-2008
可能表示2月10日或10月2日:

SET DATEFORMAT DMY
SELECT CONVERT(DATE, '2-10-2008')

SET DATEFORMAT MDY
SELECT CONVERT(DATE, '2-10-2008')
如果你拼出月份名称,事情显然会更稳定<代码>2008年10月2日始终表示2008年10月2日


但是,我建议您使用ISO日期格式:

SELECT Student_Id
FROM   LOAN
WHERE  Due_Date > '2008-10-02' 

我建议您使用ISO格式:
WHERE-Due\u Date>“2008-10-02”
。学习SQL server时,早起是一个好习惯。我可以在日期格式中使用OCT吗?如果可以,我如何在MSSQL服务器中更改它!
SELECT Student_Id
FROM   LOAN
WHERE  Due_Date > '2008-10-02'