在浏览本文之前请保证安装好SQL Server 2005。
Introduction
本文主要讲述在SQL Server 2005中Query(查询)Date Time(日期时间)会遇到的问题。
Section 1 - Problem
现在打算select FundHouse table中LastUpdateDate column中date为2008-5-21的records。
在SQL Server 2005中open FundHouse这个table可以看到在LastUpdateDate column下有以下值:
2008-5-21 19:38:36
2008-5-21 19:42:40
2008-5-21 19:43:45
2008-5-23 2:23:03
2008-5-23 2:34:43
New一个Query去select,尝试了以下几种形式:
select * from FundHouse where LastUpdateDate like '2008-5-21'
select * from FundHouse where LastUpdateDate like '2008-5-21%'
select * from FundHouse where LastUpdateDate like 2008-5-21
select * from FundHouse where LastUpdateDate like 2008-5-21%
select * from FundHouse where LastUpdateDate like '2008-5-21 19:38:36'
select * from FundHouse where LastUpdateDate= '2008-5-21 19:38:36'
select * from FundHouse where LastUpdateDate= '2008-5-21'
但第1~6种形式是不能正确把records select出来,只有第7种能正确select出来,这表示这不能用like和%来通配所有时间值。
从以上第5,6种形式可以看到即使具体到秒也不能把record select出来。
Section 2 - Reason
SQL Server 2005的datetime type存储的实际数据是精确到毫秒级的,但现在不确定是否与此有关。
Section 3 - Solution
可以用"<" or ">"或者"between ? and ?"设定范围来取值。
如用prepareStatement的话like ?这个问号不能set一个Date的date type它,因为在SQL Server 2005上测试,如以下两种写法都会select出不对的result:
select * from FundHouse where LastUpdateDate> 2008-5-21
select * from FundHouse where LastUpdateDate< 2008-5-21
经试验,只能用String date type来表示这个时间才能select出正确result,如下这样:
select * from FundHouse where LastUpdateDate> '2008-5-21'
select * from FundHouse where LastUpdateDate< '2008-5-21'
分享到:
相关推荐
在“按时间查询”的需求中,我们通常会用到SQL的`DATE`、`TIME`、`DATETIME`或`TIMESTAMP`数据类型来存储时间信息,并利用`WHERE`子句配合`BETWEEN`、`>=`、`等条件来筛选特定时间段内的数据。 `AJAX`...
3. **数据类型**:理解SQL Server 2008中的各种数据类型至关重要,如INT(整数)、VARCHAR(可变长度字符串)、DATE(日期)、TIME(时间)等。不同的数据类型适用于存储不同类型的数据,正确选择数据类型有助于提高...
- `DATE_FORMAT()`(在MySQL中)或 `CONVERT()`(在SQL Server中)允许我们按照特定格式显示日期时间。 3. **日期时间格式化**:在SQL中,我们经常需要将日期时间转换为用户友好的格式。例如,`SELECT DATE_...
3. **资源限制**:调整SQL Server的查询超时设置(`query_timeout`),允许查询在更长时间内运行,但这也可能导致服务器资源耗尽。 4. **分区表**:对于大数据量的表,可以考虑使用分区表来提高查询效率。 5. **...
Get up and running on Microsoft SQL Server 2016 in no time with help from this thoroughly revised, practical resource. The book offers thorough coverage of SQL management and development and features ...
SQL(Structured Query Language)是用于管理和处理关系型数据库的标准语言,它在IBM的System R项目中诞生,后来成为ANSI和ISO标准。 一、数据定义(DDL) DDL主要用于创建和修改数据库结构。以下是一些基本的DDL...
4. 数据类型:SQL Server支持多种数据类型,如数值类型(INT、FLOAT、DECIMAL)、字符串类型(VARCHAR、NVARCHAR)、日期/时间类型(DATE、TIME、DATETIME2)等。理解这些数据类型及其用途是编写正确SQL语句的前提。...
2. **数据类型**:了解SQL Server中的数据类型至关重要,如INT(整数)、VARCHAR(可变长度字符串)、DATE(日期)、TIME(时间)等,这将决定你如何正确地存储和处理数据。 3. **表的创建与管理**:学会使用CREATE...
SQL定义了多种数据类型,如整型(INTEGER)、浮点型(FLOAT)、字符型(CHAR, VARCHAR)、日期时间型(DATE, TIME, TIMESTAMP)等,以适应不同类型的数据存储需求。 三、SQL基本查询 1. SELECT语句:用于从表中选择...
- 新的数据类型:介绍SQL Server 2008中新增加的数据类型,如DATE、TIME、DATETIME2等。 - 索引结构改进:讲解如何利用新的索引结构来提高查询性能。 - 管理能力增强:探讨SQL Server 2008中增强的管理功能,如...
2. **数据类型**:SQL Server支持多种数据类型,如INT(整数)、VARCHAR(可变长度字符串)、DATE(日期)、TIME(时间)、DECIMAL(浮点数)等。理解每种数据类型的用途和限制是基础。 3. **表的创建与操作**:...
DATE和TIME类型的引入,使得日期和时间的处理更加精确和灵活。 在数据库设计方面,书中会涵盖如何创建和管理数据库,包括表的结构设计、索引的构建、视图的使用以及存储过程的编写。表的设计涉及数据规范化的概念,...
2. **数据类型**:了解SQL中的各种数据类型,如整型(INT、SMALLINT、BIGINT)、浮点型(FLOAT、REAL)、字符型(CHAR、VARCHAR、NVARCHAR)、日期时间型(DATE、TIME、DATETIME)等,对于正确存储和处理数据至关...
标题中的"sql_Attendance_System_Query.rar_attendance"表明这是一个与SQL Server有关的考勤系统查询项目,其中可能包含了用于管理员工出勤记录的数据库查询脚本或者相关文档。描述中的"Attendance system in sql ...
SQL中的数据类型包括数值类型(如INT、FLOAT、DECIMAL)、字符串类型(CHAR、VARCHAR)、日期/时间类型(DATE、TIME、DATETIME)以及布尔类型(BOOLEAN)等。理解不同数据类型的应用和限制,对于编写有效的SQL语句至...
在数据库管理中,SQL(Structured Query Language)是用于管理和处理关系型数据库的强大工具。SQL函数则是SQL中的核心组成部分,它们提供了处理数据的各种方法,包括计算、聚合、转换、比较等。下面将详细介绍一些...
- **SQL(Structured Query Language)**:一种用于管理关系数据库的标准语言,被广泛应用于各种数据库管理系统中。 - **SQL的发展历程**: - 1970年代初,IBM的研究员Edgar F. Codd提出了关系模型的概念。 - 1970...
- **DATE/TIME FUNCTIONS**:用于处理日期和时间。 - `NOW()`:返回当前日期和时间。 - `FORMAT()`:格式化日期/时间。 ##### 4. SQL分组与筛选 - **GROUP BY**:按一个或多个列进行分组。 - **HAVING**:对分组...
3. **数据类型**:学习SQL支持的数据类型,如整数(INTEGER)、浮点数(FLOAT)、字符串(VARCHAR)、日期/时间(DATE、TIME、DATETIME)等。 4. **SQL语句**: - **SELECT语句**:这是最常用的SQL语句,用于从...
3. 数据类型:SQL支持多种数据类型,如数值类型(整型、浮点型)、字符串类型(CHAR、VARCHAR)、日期/时间类型(DATE、TIME、DATETIME)以及二进制类型(BLOB、BINARY)等。 4. 查询数据:SQL查询的基本语法是...