----今日------
SELECT * FROM 表名 WHERE datediff(day,字段名,getdate())=0;
----昨天------
SELECT * FROM 表名 WHERE datediff(day,字段名,getdate())=1;
-----本月-----
select * from 表名 where datepart(mm,字段名)=datepart(mm,getdate())
-----今年------
select * from 表名 where datepart(YYYY,字段名)=datepart(YYYY,getdate())
-----指定时间段------
select * from tablename where start_date between CONVERT(datetime , '2008/05/01', 111 ) and convert(datetime , '2008/05/31', 111 )
select 当前日期=convert(varchar(10),getdate(),120),当前时间=convert(varchar(8),getdate(),114)
select 本年第多少周=datename(week,'2004-10-15') ,今天是周几=datename(weekday,'2004-10-15')
函数 参数/功能
GetDate( ) 返回系统目前的日期与时间
DateDiff (interval,date1,date2) 以interval 指定的方式,返回date2 与date1两个日期之间的差值 date2-date1
DateAdd (interval,number,date) 以interval指定的方式,加上number之后的日期
DatePart (interval,date) 返回日期date中,interval指定部分所对应的整数值
DateName (interval,date) 返回日期date中,interval指定部分所对应的字符串名称
参数 interval的设定值如下:
值缩写(Sql Server) Access 和 ASP 说明
Year Yy yyyy 年 1753 ~ 9999
Quarter Qq q 季 1 ~ 4
Month Mm m 月1 ~ 12
Day of year Dy y 一年的日数,一年中的第几日 1-366
Day Dd d 日,1-31
Weekday Dw w 一周的日数,一周中的第几日 1-7
Week Wk ww 周,一年中的第几周 0 ~ 51
Hour Hh h 时0 ~ 23
Minute Mi n 分钟0 ~ 59
Second Ss s 秒 0 ~ 59
Millisecond Ms - 毫秒 0 ~ 999
---求相差天数
select datediff(day,'2004-01-01',getdate())
--1.一个月第一天的
SELECT DATEADD(mm,DATEDIFF(mm,0,getdate()),0)
--2.本周的星期一
SELECT DATEADD(wk, DATEDIFF(wk,0,getdate()),0)
--3.本周的星期日
select dateadd(wk,datediff(wk,0,getdate()),6)
--4.一年的第一天
SELECT DATEADD(yy, DATEDIFF(yy,0,getdate()),0)
--5.季度的第一天
SELECT DATEADD(qq, DATEDIFF(qq,0,getdate()),0)
--6.当天的半夜
SELECT DATEADD(dd, DATEDIFF(dd,0,getdate()),0)
--7.上个月的最后一天
SELECT dateadd(ms,-3,DATEADD(mm,DATEDIFF(mm,0,getdate()),0))
--8.去年的最后一天
SELECT dateadd(ms,-3,DATEADD(yy,DATEDIFF(yy,0,getdate()),0))
--9.本月的最后一天
SELECT dateadd(ms,-3,DATEADD(mm,DATEDIFF(m,0,getdate())+1,0))
--10.本年的最后一天
SELECT dateadd(ms,-3,DATEADD(yy,DATEDIFF(yy,0,getdate())+1,0))
--11.本月的第一个星期一
select DATEADD(wk,DATEDIFF(wk,0,dateadd(dd,6-datepart(day,getdate()),getdate())),0)
注意:
Convert()函数中的各个参数的意义,第一个参数,varchar(10)是目标系统所提供的数据类型,包括 bigint 和 sql_variant。不能使用用户定义的数据类型。第二个参数是你要转换的字段,我这里是[time]。最后一个就是格式了,这个值是可选的:20或者120都可以,它遵循的是[ODBC 规范],输入/输出样式为:yyyy-mm-dd hh:mm:ss[.fff]
具体的可以参考Sql Server的联机帮助!
======================================================
T-Sql查找表中当月的记录
思路:将要查找的时间字段用Month()函数取出其中的月份,然后再取出当前月的月份,对比就OK了
例:
Select * From VIEW_CountBill Where Month([time]) = Month(getDate())
大家灵活运用吧。
分享到:
相关推荐
根据提供的文件信息,本文将详细解释如何使用SQL...本文详细介绍了如何使用SQL语句实现数据的时间递增累加功能,包括数据表结构的设计、具体SQL查询语句的编写以及应用场景的探讨。希望对相关领域的技术人员有所帮助。
### SQL 时间段查询详解 #### 一、概述 在处理具有日期时间字段的数据时,我们经常需要筛选出特定时间段内的数据。例如,在本案例中,需要获取某表中7月1日至7月31日之间晚上10点到早上6点的数据。这种查询涉及到...
在SQL查询中对Oracle数据库进行时间段操作是一项关键技能,特别是在数据恢复和历史数据分析时。Oracle数据库提供了多种方式来处理时间范围的数据,包括SQL查询、闪回功能和快照。下面我们将详细探讨这些知识点。 ...
综上所述,掌握SQL的高级查询技术,尤其是日期和时间处理、层次查询和分析查询,对于数据库管理员和数据分析师来说至关重要,它不仅能提高数据处理效率,也能为企业的决策支持提供强大支持。通过学习和实践这些技术...
### 数据库SQL语句按时间查询全部详解 在数据库管理中,经常需要对数据进行时间相关的查询操作。本文将详细介绍如何使用SQL语句来进行基于时间的查询,特别是使用`DATEDIFF`函数以及其他与时间处理相关的函数,如`...
parallel query 是 SQL Server 中的一种查询优化技术,可以加速查询的执行速度,提高数据库性能,减少查询时间。然而,在使用并行查询时,需要注意硬件方面的限制,不建议对所有查询都使用并行查询。
SQL时间查询语句 SQL时间查询语句是一种常用的查询语句,在数据库中应用广泛。本文将详细介绍各种时间查询语句的使用方法和相关知识点。 一、时间查询语句的基本概念 时间查询语句是指在数据库中查询某个时间段内...
这段查询会返回当前所有未提交事务的进程ID(spid)、阻塞状态(blocked)、等待时间(waittime)等关键信息,以及SQL语句的文本(text),有助于我们定位问题源头。 接下来,我们需要查找是否存在阻塞或导致死锁的...
在LabVIEW中操作数据库,尤其是实现按时间段查询数据,需要借助特定的工具包。本教程主要涉及使用官方数据库工具包“Database Connectivity Toolkit”,该工具包包含29个函数,能够实现数据库连接、增删改查及数据...
SQL执行时间是指从发送SQL查询到获取查询结果所需的时间,它包含了解析SQL语句、生成执行计划、执行计划以及返回结果等步骤。在大数据量和复杂查询的场景下,SQL执行时间是衡量数据库性能的重要指标之一。 帆软报表...
### SQL时间查询语句详解 #### 查询特定日期范围的数据 在SQL中,查询特定日期范围内的数据是一项基本但极其实用的功能。例如,如果我们想找出所有在2003年6月1日至2003年8月1日之间出版的书籍,可以使用以下SQL...
本文主要通过一下几个方面介绍...例如,下面的查询可用于查找使用最多读取,写入,工作时间(CPU)等的查询。查询结果如下所示。下面的图片来自我制作的营销应用程序。您可以看到一个特定查询(前一个)占用了所有资源
本章将深入探讨SQL语句中的条件查询和排序操作,这对于数据检索和分析至关重要。 首先,条件查询是SQL中的基础操作,它允许我们根据特定条件从数据库中筛选出所需的数据。这主要通过使用`WHERE`子句来实现。例如,...
PreparedStatement对象可以重用,减少了SQL语句的解析时间。 在executeQuery()方法中,使用PreparedStatement来执行SQL语句,并将查询结果放入Vector容器中。 五、ResultSet详解 ResultSet是Java执行SQL语句实现...
### 使用SQL语句查询日期 #### 一、概述 在数据库操作中,经常需要根据日期进行数据筛选。本文档将详细介绍如何使用SQL语句来查询特定日期的数据,特别是使用`DATEDIFF`函数来精确地查询一天内或者一周内的数据。 ...
此查询会返回执行次数最多的100个SQL语句,通过`RANK()`函数按执行次数降序排名。 通过分析这些数据,DBA可以识别出频繁执行且性能低效的SQL语句,进而采取优化措施,如调整索引、重构SQL语句或优化应用程序代码。...
【SQL Server MSDE查询分析器界面详解】 SQL Server Desktop Engine(简称MSDE)是Microsoft公司推出的一款轻量级数据库引擎,它提供了与SQL Server标准版相似的功能,但针对小型应用程序和开发环境。在进行数据...
这款工具可能提供了多查询管理的功能,允许用户存储和管理多个查询配置,按需执行或定时执行。此外,考虑到安全性,该工具可能还包含了数据库连接信息的加密存储,确保敏感数据的安全。 综上所述,"SQL Server...
在“按时间查询”的需求中,我们通常会用到SQL的`DATE`、`TIME`、`DATETIME`或`TIMESTAMP`数据类型来存储时间信息,并利用`WHERE`子句配合`BETWEEN`、`>=`、`等条件来筛选特定时间段内的数据。 `AJAX`...
详解SQL Server分布式查询 SQL Server中的分布式查询(Distributed Query)是指能够访问存放在同一部计算机或不同计算机上的SQL Server或不同种类的数据源。分布式查询与普通查询的区别在于它需要连接多个MSSQL...