【问题标题】:ASP + SQL Server + NOW() = HeadacheASP + SQL Server + NOW() = 头痛
【发布时间】:2014-11-27 16:47:55
【问题描述】:

我目前正在使用 Visual Web Developer 2010 (Express),我正在尝试在 SQL 查询中使用 NOW() 命令来允许日期选择,但它在随机时间不起作用,我迷失了为什么这样做。

我将举一些例子,我来自英国,我的机器设置为标准时间(与 time.windows.com 同步),一切都很好,但是当我使用 = NOW() 时它可以工作,但当它没有'似乎输入日期混淆了,示例如下:

目前我的表设置如下:

crew_example

Column 1 : Date (In standard SQL time, so YYYY-MM-DD)
Column 2 : Initial
Column 3 : Surname
etc

我的SQL查询如下:

SELECT Date,
       Initial,
       Surname,
FROM   crew_example
WHERE  ( Date = { fn NOW() } )
ORDER  BY Date 

此功能正常工作,目前正在处理用户 BETWEEN (DATE = { fn NOW() } + 1) AND { fn NOW() } + 6) 的另一个 SQL 查询(我之前设置时遇到了问题,但它神奇地自行修复,从未考虑过任何事情)。

如果我使用今天的日期27/11/2014,当我硬编码时的日期输出不起作用,但是当我将它“美国化”为11/27/2014 时,即使输出采用英国格式 27/11/2014 00:00 时输出: 00

有没有办法统一日期?我是 SQL 查询的新手,所以如果我可以使用 NOW() 命令但不要使用 NOW(),格式为 MM/DD/YYYY,而不是使用我的英国日期类型看起来是 NOW()

编辑:似乎CURRENT_DATE 可以工作....但是如果这是最好的方法有什么想法吗?

问候 杰米

【问题讨论】:

  • 哪种sql方言? T-Sql,MySql-Sql? nvm 没有看到标签。
  • Current_date() 似乎工作了 30 秒,但现在当我尝试添加另一个过滤器时已经死了......
  • 我觉得我应该知道这一点,但我不能真正回答这个问题,因为我不知道。SQL Server 是通过 Visual Web Developer 的 Microsoft SQL Server,通过资源管理器的日期课程说:“ Microsoft SQL Server (SqlClient)"
  • 你用 mysql 标记了它,所以你使用的是 mysql 服务器而不是 mssql 服务器,对吧?
  • 对不起@StefanOssendorf,这是一个错误点击,我使用的是 Microsoft SQL Server。

标签: asp.net sql-server sql-server-2008 date


【解决方案1】:

在 T-SQL 中我会使用这样的东西:

Where Date between cast(getdate() as date) and cast(dateadd(d,1,getdate()) as date)

我从来没有使用过“纯”日期栏,所以我不确定你是否需要摆脱演员表的时间。
对于 dateadd() 参见:DATEADD (Transact-SQL)
对于 cast() 参见:CAST and CONVERT (Transact-SQL)

【讨论】:

  • 请原谅我的新手,但我如何将其构建到已经构建的查询中?例如上面的查询,当我使用您的代码时,我收到以下错误:'Poorly forms cast function.'
  • 对不起,上次演员错了我忘了“作为日期”^^'
  • 您先生,是人中的神。谢谢,只要您将“as DATE”位更改为日期列,这是否适用?因此,如果我的日期列是 Date_Current 这将是:Where date_current between cast(getdate() as date_current) and cast(dateadd(d,1,getdate()) as date_current)Where Date_current between cast(getdate() as date) and cast(dateadd(d,1,getdate()) as date)
  • 最后一个。在“as”是数据类型之后查看msdn.microsoft.com/en-us/library/ms187928.aspx。欢迎你:)
猜你喜欢
  • 1970-01-01
  • 2019-02-11
  • 2010-09-27
  • 2012-07-29
  • 1970-01-01
  • 1970-01-01
  • 2010-11-08
  • 2012-09-07
  • 2015-09-18
相关资源
最近更新 更多