在SQL中按日期过滤
发布时间:2020-05-28 14:56:41 所属栏目:MsSql 来源:互联网
导读:我的表中有一列用于日期(DateTime),我正在尝试创建一个WHERE子句,表示在2012年12月11日至2012年12月12日期间发布的日期 日期列的样本值= 2012-05-24 00:38:40.260 我想说明在MM-DD-YYYY和MM-DD-YYYY之间的日期. 我试过了 WHERE dates BETWEEN ((convert(nva
|
我的表中有一列用于日期(DateTime),我正在尝试创建一个WHERE子句,表示在2012年12月11日至2012年12月12日期间发布的日期 日期列的样本值= 2012-05-24 00:38:40.260 我想说明在MM-DD-YYYY和MM-DD-YYYY之间的日期. 我试过了 WHERE dates BETWEEN ((convert(nvarchar(10),dates,110) = '2012-12-12') AND (convert(nvarchar(10),110) = '2012-12-12')) 但似乎没有用. “语法不正确=” 请帮忙 编辑: 感谢各种选项和描述人.得到了@ RichardTheKiwi的选择. 解决方法如果您的日期列不包含时间信息,您可以逃脱:WHERE dates BETWEEN '20121211' and '20121213' 但是,鉴于您的日期列实际上是日期时间,您需要这个 WHERE dates >= '20121211' AND dates < '20121214' -- i.e. 00:00 of the next day SQL Server 2008以后保留SARGability(使用索引以获得良好性能的能力)的另一个选项是: WHERE CAST(dates as date) BETWEEN '20121211' and '20121213' 注意:始终将ISO-8601格式YYYYMMDD与SQL Server一起使用,以获得明确的日期文字. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- SQL Server sql分类汇总及Select的自增长脚本
- sql-server – 这个查询是否等同于SQL Server 2008的OPTIMI
- sql-server – SQL Server查询 – 分组乘法
- SQLServer2005 Output子句获取刚插入的ID值
- ms sql server中实现的unix时间戳函数(含生成和格式化,可
- sql-server – 有没有办法防止SQL Server以静默方式截断局部
- 详解Redis开启远程登录连接
- SQL HELP – 基于BIT变量的条件where子句 – SQL Server
- 备份AppEngine数据库(Google云存储?)
- sql-server – SQL Server登录前握手
