`
woai671
  • 浏览: 31718 次
社区版块
存档分类
最新评论

sql 按时间查询

    博客分类:
  • SQL
sql 
阅读更多
----今日------
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查询语句的编写以及应用场景的探讨。希望对相关领域的技术人员有所帮助。

    sql时间段查询

    ### SQL 时间段查询详解 #### 一、概述 在处理具有日期时间字段的数据时,我们经常需要筛选出特定时间段内的数据。例如,在本案例中,需要获取某表中7月1日至7月31日之间晚上10点到早上6点的数据。这种查询涉及到...

    sql查询oracle时间段操作

    在SQL查询中对Oracle数据库进行时间段操作是一项关键技能,特别是在数据恢复和历史数据分析时。Oracle数据库提供了多种方式来处理时间范围的数据,包括SQL查询、闪回功能和快照。下面我们将详细探讨这些知识点。 ...

    SQL 高级查询技术

    综上所述,掌握SQL的高级查询技术,尤其是日期和时间处理、层次查询和分析查询,对于数据库管理员和数据分析师来说至关重要,它不仅能提高数据处理效率,也能为企业的决策支持提供强大支持。通过学习和实践这些技术...

    数据库sql语句按时间查询全部详解

    ### 数据库SQL语句按时间查询全部详解 在数据库管理中,经常需要对数据进行时间相关的查询操作。本文将详细介绍如何使用SQL语句来进行基于时间的查询,特别是使用`DATEDIFF`函数以及其他与时间处理相关的函数,如`...

    sqlserver之并行查询

    parallel query 是 SQL Server 中的一种查询优化技术,可以加速查询的执行速度,提高数据库性能,减少查询时间。然而,在使用并行查询时,需要注意硬件方面的限制,不建议对所有查询都使用并行查询。

    SQL时间查询语句

    SQL时间查询语句 SQL时间查询语句是一种常用的查询语句,在数据库中应用广泛。本文将详细介绍各种时间查询语句的使用方法和相关知识点。 一、时间查询语句的基本概念 时间查询语句是指在数据库中查询某个时间段内...

    sqlserver如何快速查询死锁语句

    这段查询会返回当前所有未提交事务的进程ID(spid)、阻塞状态(blocked)、等待时间(waittime)等关键信息,以及SQL语句的文本(text),有助于我们定位问题源头。 接下来,我们需要查找是否存在阻塞或导致死锁的...

    使用LabVIEW操作ACCESS、MySQL、SQL server数据库实现按照时间段查询数据

    在LabVIEW中操作数据库,尤其是实现按时间段查询数据,需要借助特定的工具包。本教程主要涉及使用官方数据库工具包“Database Connectivity Toolkit”,该工具包包含29个函数,能够实现数据库连接、增删改查及数据...

    帆软报表插件,显示sql数据集的查询时间。

    SQL执行时间是指从发送SQL查询到获取查询结果所需的时间,它包含了解析SQL语句、生成执行计划、执行计划以及返回结果等步骤。在大数据量和复杂查询的场景下,SQL执行时间是衡量数据库性能的重要指标之一。 帆软报表...

    sql时间查询语句学习

    ### SQL时间查询语句详解 #### 查询特定日期范围的数据 在SQL中,查询特定日期范围内的数据是一项基本但极其实用的功能。例如,如果我们想找出所有在2003年6月1日至2003年8月1日之间出版的书籍,可以使用以下SQL...

    SQLServer的性能调优:解决查询速度慢的五种方法

    本文主要通过一下几个方面介绍...例如,下面的查询可用于查找使用最多读取,写入,工作时间(CPU)等的查询。查询结果如下所示。下面的图片来自我制作的营销应用程序。您可以看到一个特定查询(前一个)占用了所有资源

    sql查询和排序

    本章将深入探讨SQL语句中的条件查询和排序操作,这对于数据检索和分析至关重要。 首先,条件查询是SQL中的基础操作,它允许我们根据特定条件从数据库中筛选出所需的数据。这主要通过使用`WHERE`子句来实现。例如,...

    java执行SQL语句实现查询的通用方法详解

    PreparedStatement对象可以重用,减少了SQL语句的解析时间。 在executeQuery()方法中,使用PreparedStatement来执行SQL语句,并将查询结果放入Vector容器中。 五、ResultSet详解 ResultSet是Java执行SQL语句实现...

    使用sql语句查询日期

    ### 使用SQL语句查询日期 #### 一、概述 在数据库操作中,经常需要根据日期进行数据筛选。本文档将详细介绍如何使用SQL语句来查询特定日期的数据,特别是使用`DATEDIFF`函数来精确地查询一天内或者一周内的数据。 ...

    oracle查看执行最慢与查询次数最多的sql语句

    此查询会返回执行次数最多的100个SQL语句,通过`RANK()`函数按执行次数降序排名。 通过分析这些数据,DBA可以识别出频繁执行且性能低效的SQL语句,进而采取优化措施,如调整索引、重构SQL语句或优化应用程序代码。...

    Sqlserver MSDE查询分析器界面

    【SQL Server MSDE查询分析器界面详解】 SQL Server Desktop Engine(简称MSDE)是Microsoft公司推出的一款轻量级数据库引擎,它提供了与SQL Server标准版相似的功能,但针对小型应用程序和开发环境。在进行数据...

    SQL Server数据库查询自动导出发送工具

    这款工具可能提供了多查询管理的功能,允许用户存储和管理多个查询配置,按需执行或定时执行。此外,考虑到安全性,该工具可能还包含了数据库连接信息的加密存储,确保敏感数据的安全。 综上所述,"SQL Server...

    PHP sqlserver AJAX 按时间查询

    在“按时间查询”的需求中,我们通常会用到SQL的`DATE`、`TIME`、`DATETIME`或`TIMESTAMP`数据类型来存储时间信息,并利用`WHERE`子句配合`BETWEEN`、`>=`、`等条件来筛选特定时间段内的数据。 `AJAX`...

    详解SQL Server分布式查询

    详解SQL Server分布式查询 SQL Server中的分布式查询(Distributed Query)是指能够访问存放在同一部计算机或不同计算机上的SQL Server或不同种类的数据源。分布式查询与普通查询的区别在于它需要连接多个MSSQL...

Global site tag (gtag.js) - Google Analytics