`

关于Sql Server中日期比较的奇怪问题

阅读更多

今天项目中遇到一个奇怪SQL语句的问题,留下来以后慢慢琢磨。

一个log表,表中数据有

logid   type  content                 time                            user       。。。。。

1        ADD    Error      2010-01-29 08:55:49.170     tujunlan 12334 PermissionGroup
2        ADD    Error      2010-01-29 09:07:54.297     tujunlan 12334 PermissionGroup
3        ADD    Error      2010-01-29 09:10:11.390     tujunlan 12334 PermissionGroup
4        ADD    Error      2010-01-29 09:11:41.077     tujunlan 12334 PermissionGroup
5        ADD    Error      2010-01-29 09:13:45.843     tujunlan 12334 PermissionGroup

6        ADD    Error      2010-01-30 00:00:00.000     tujunlan 1234 PermissionGroup

7        ADD    Error      2010-01-30 01:00:00.000     tujunlan 1234 NULL

其中time是DataTime类型,当我又如下语句检索时,全部检索出来

select * from T_Log where time>='2010-01-29'

 

改成这样也是一样结果

select * from T_Log where time>=2010-01-29

 

改成这样就会一条记录也没有

select * from T_Log where time>='2010-01-29' and time<='2010-01-29'

 

但是改成这样还是一条也检索不出来

select * from T_Log where time>=2010-01-29 and time<=2010-01-30

 

除非再改成这样就可以出来前6条记录

select * from T_Log where time>=2010-01-29 and time<='2010-01-30'或者

select * from T_Log where time>='2010-01-29' and time<='2010-01-30'

 

总结一点规律,就是像这种没有时分秒的时间,数据库会把它默认为00:00:00.000的形式,但是关于为什么单引号在后面时一定要加上这一点就不清楚了

 

0
0
分享到:
评论

相关推荐

    SQL Server中日期问题的解决

    ### SQL Server中日期问题的解决 在Microsoft SQL Server(以下简称SQL Server)中处理日期和时间时,经常会遇到一些挑战。由于SQL Server默认只提供`DATETIME`数据类型来存储日期和时间信息,这使得在某些情况下仅...

    sqlserver中日期型字段设默认值

    在SQL Server中,日期型字段设默认值是一个重要的功能,它允许数据库管理员或开发者为特定的日期字段设定一个默认的时间点,通常是当前时间或者基于当前时间的某个偏移量。这在创建新记录时非常有用,可以自动填充...

    sqlserver中对时间日期的操作

    在SQL Server中对时间日期的操作是数据库管理与开发过程中不可或缺的一部分。这不仅涉及到对当前时间的获取、格式化,还包括了日期的计算和调整。以下将深入解析如何在SQL Server中进行时间日期的操作。 ### 一、...

    关于sqlserver2008中一些问题的解决

    ### 关于SQL Server 2008中数据库连接问题及.bak文件的导入方法 #### 一、导入.bak文件到数据库的操作步骤 在SQL Server 2008中,有时候我们需要将备份文件(.bak文件)恢复到现有的数据库中。下面详细介绍如何将....

    sqlServer 日期类型转字符串

    在SQL Server中,将日期类型转换为字符串是一个常见的需求,特别是在数据展示或处理时需要特定日期格式的情况下。本文将深入探讨如何使用SQL Server内置的`CONVERT`函数将日期类型转化为各种格式的字符串,以及这一...

    sqlserver中得到当前日期

    SQL Server 中获取当前日期 SQL Server 中获取当前日期是通过使用 GETDATE() 函数或 CONVERT 函数来实现的。GETDATE() 函数返回当前日期和时间,而 CONVERT 函数可以将日期和时间格式化输出。 GETDATE() 函数 ...

    SQL SERVER 关于日期函数(字符转日期,日期转字符串)

    在本文中,我们将详细介绍 SQL Server 中的日期函数,包括字符转日期、日期转字符串等方面的知识点。 日期函数概述 SQL Server 中的日期函数可以分为两大类:日期和时间函数、字符串和日期函数。日期和时间函数...

    SQLserver中按年月日生成日期型自增编码.pdf

    SQL Server 中按年月日生成日期型自增编码 本文档介绍了在 SQL Server 中生成日期型自增编码的方法,通过创建两个函数 `GenCustomCode` 和 `GenCustomID`,可以生成按年月日的日期型自增编码。该方法可以应用于各种...

    SQL Server 查询两个日期之间的所有月份

    在SQL Server中,查询两个日期之间的所有月份是一个常见的需求,特别是在数据分析、报表生成或时间序列分析等场景。本文将详细讲解如何使用SQL Server实现这一功能,以满足上述标题和描述中的要求。 首先,我们需要...

    将Sql Server 2000中的数据库备份文件还原到sql2005中

    将Sql Server 2000中的数据库备份文件还原到Sql Server 2005中是一个常见的问题。在这个过程中,我们需要了解Sql Server 2000和Sql Server 2005之间的差异,以便正确地还原数据库备份文件。下面是相关的知识点: 1....

    SQLServer 根据生日计算年龄

    SQLServer 根据生日计算年龄

    40集SQL Server 基础入门视频教程 SQL Server 数据库基础入门必备课程

    1.SQL Server 2014简介.mp4 10.SQL Server 2014定义表主键、外键.mp4 11.SQL Server 2014新增表记录.mp4 12.SQL Server 2014查询表记录.mp4 13.SQL Server 2014修改表记录.mp4 14.SQL Server 2014删除表记录....

    sqlserver数据库类型对应Java中的数据类型

    在 SQL Server 中,datetimeoffset 是一个日期时间偏移类型,用于存储日期时间偏移值。在 Java 中,datetimeoffset 对应的数据类型是 microsoft.sql.Types.DATETIMEOFFSET。 了解 SQL Server 数据库类型对应 Java ...

    SQL SERVER 字符集问题之一解决

    在本文中,我们将讨论 SQL SERVER 字符集问题之一解决方案,解决 equal to 运算中 "Chinese_PRC_CI_AS" 和 "Chinese_PRC_CS_AS" 之间的排序规则冲突。 一、问题背景 在 SQL SERVER 中,默认的字符集是 SQL_Latin1_...

    sql server2019安装包

    SQL Server 2019是Microsoft推出的一款关系型数据库管理系统,是SQL Server系列中的一个重要版本。它提供了强大的数据存储、处理和分析能力,广泛应用于企业级数据库应用开发和数据分析。在本安装包中,主要包含的是...

    SQL Server各种日期计算方法

    ### SQL Server中的日期计算方法详解 #### 概述 在SQL Server中进行日期计算是数据库管理及数据分析中不可或缺的一部分。本文将围绕如何在SQL Server环境中有效地处理与日期相关的计算问题展开,具体包括如何使用`...

    sqlserver驱动2012版

    标题中的“sqlserver驱动2012版”指的是SQL Server Native Client 2012,这是微软为SQL Server设计的一款数据库访问接口。SQL Server Native Client(简称SQLNCLI)是用于与SQL Server交互的一种客户端库,它包含了...

    sql server 导入超大SQL脚本文件

    然而,在实际应用中,我们经常会遇到导入超大 SQL 脚本文件的问题。本文将介绍如何使用 osql 工具来导入超大 SQL 脚本文件。 什么是 osql? osql 是 SQL Server 提供的一个命令行工具,用于执行 SQL 语句和运行 ...

    SqlServer2005 打开 SqlServer2008 mdf文件

    Sql Server 2005 打开 Sql Server 2008 mdf 文件数据库转换是指将 Sql Server 2008 中的数据库文件(mdf 文件)转换为 Sql Server 2005 可以识别的格式,以便在 Sql Server 2005 中使用。这种转换过程需要使用 Sql ...

Global site tag (gtag.js) - Google Analytics