精华内容
下载资源
问答
  • 使用Sql日期条件查询

    千次阅读 2018-06-19 15:41:20
    --查询当天(1:select * from ShopOrder where datediff(day,ordTime,getdate()-1)=0--查询当天(2:select * from info where DateDiff(dd,datetime,getdate())=0 --前30天SELECT * FROM A where datediff(d,...
    --查询当天(1:
    
    

    select * from ShopOrder where datediff(day,ordTime,getdate()-1)=0

    --查询当天(2:
    select * from info where DateDiff(dd,datetime,getdate())=0  

    --前30天

    SELECT * FROM A where datediff(d,datetime,getdate()) <=30

    --上一月

    SELECT * FROM A WHERE DATEDIFF(m, shijian, GETDATE()) <=1 

    --查询24小时内的:
    select * from info where DateDiff(hh,datetime,getDate())<=24

    --本月记录
    SELECT * FROM 表 WHERE datediff(month,[dateadd],getdate())=0

    --本周记录
    SELECT * FROM 表 WHERE datediff(week,[dateadd],getdate())=0

     

    DATEDIFF 函数:

    语法:


    DATEDIFF ( datepart , startdate , enddate )


    备注:enddate 减去 startdate。如果 startdate 晚于 enddate,则返回负值。

    如果结果超出整数值范围,则 DATEDIFF 将产生错误。对于毫秒,最大数是 24 天 20 小时 31 分钟零 23.647 秒。对于秒,最大数是 68 年。

    跨分钟、秒和毫秒等边界计算的方法使得 DATEDIFF 指定的结果在所有数据类型中均一致。结果是带正负号的整数值,它等于跨第一个和第二个日期间的 datepart 边界数。例如,在 1 月 4 日(星期日)和 1 月 11 日(星期日)之间的星期数是 1。

    sql server中的时间函数
    1. 当前系统日期、时间
    select getdate()


    2. dateadd 在向指定日期加上一段时间的基础上,返回新的 datetime 值
    例如:向日期加上2天
    select dateadd(day,2,'2004-10-15') --返回:2004-10-17 00:00:00.000


    3. datediff 返回跨两个指定日期的日期和时间边界数。
    select datediff(day,'2004-09-01','2004-09-18') --返回:17


    4. datepart 返回代表指定日期的指定日期部分的整数。
    SELECT DATEPART(month, '2004-10-15') --返回 10


    5. datename 返回代表指定日期的指定日期部分的字符串
    SELECT datename(weekday, '2004-10-15') --返回:星期五


    6. day(), month(),year() --可以与datepart对照一下

    select 当前日期=convert(varchar(10),getdate(),120)
    ,当前时间=convert(varchar(8),getdate(),114)

    select datename(dw,'2004-10-15')

    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

     

    access 和 asp 中用date()和now()取得系统日期时间;其中DateDiff,DateAdd,DatePart也同是能用于Access和asp中,这些函数的用法也类似


    举例:
    1.GetDate() 用于sql server :select GetDate()

    2.DateDiff('s','2005-07-20','2005-7-25 22:56:32')返回值为 514592 秒
    DateDiff('d','2005-07-20','2005-7-25 22:56:32')返回值为 5 天

    3.DatePart('w','2005-7-25 22:56:32')返回值为 2 即星期一(周日为1,周六为7)
    DatePart('d','2005-7-25 22:56:32')返回值为 25即25号
    DatePart('y','2005-7-25 22:56:32')返回值为 206即这一年中第206天
    DatePart('yyyy','2005-7-25 22:56:32')返回值为 2005即2005年

    展开全文
  • 日期类型查询条件sql语句拼接-java

    千次阅读 2012-08-06 15:55:03
    开发java web程序时,经常遇到要求操作者输入日期或时间搜索条件的情况,后台java代码就需要根据输入的搜索条件拼接sql语句。 但是遇到日期类型的搜索条件,如何拼接字符串呢。 目前我使用的oracle10g数据库,可以...

    开发java web程序时,经常遇到要求操作者输入日期或时间搜索条件的情况,后台java代码就需要根据输入的搜索条件拼接sql语句。

    但是遇到日期类型的搜索条件,如何拼接字符串呢。

    目前我使用的oracle10g数据库,可以使用数据库自带的函数to_date(arg1,arg2)进行字符串向日期类型的转化。

    其中,arg1代表字符串类型的要转化为日期类型的用户输入数据。arg2代表要转化为的日期的字符串模式表示。例如:

    to_date('2012-02-02 23:59:59','yyyy-mm-dd hh24:mi:ss')

    java后台拼接sql语句时,就可以这样写了:

    select * from table_aaa t where t.ins_time between to_date('2012-02-02 23:59:59','yyyy-mm-dd hh24:mi:ss') and to_date('2012-02-012 23:59:59','yyyy-mm-dd hh24:mi:ss');

    展开全文
  • SqlServe查询日期时间范围条件: –查询当天: select * from info where DateDiff(dd,datetime,getdate())=0 –查询24小时内的: select * from info where DateDiff(hh,datetime,getDate())<=24 –本月记录 ...

    SqlServe查询日期时间范围条件:

    –查询24小时内的:
    select * from info where DateDiff(hh,datetime,getDate())<=24

    –查询当天:
    select * from info where DateDiff(dd,datetime,getDate())=0

    –本周记录(从周日开始到周六)
    SELECT * FROM 表 WHERE DateDiff(week,datetime,getDate())=0

    –本月记录
    SELECT * FROM 表 WHERE DateDiff(month,datetime,getDate())=0

    注释:datetime为要查询的时间字段

    展开全文
  • 查询日期范围时SQL条件的写法

    千次阅读 2012-03-22 11:33:57
    在Java web页面开发中经常遇到检索条件包含一个开始日期、终止日期,输入后,查询符合该日期范围内的记录。对于这样的需求我们要了解清楚客户到底想要检索出什么样的数据。如果检出的数据包含了以下几种情况,那么就...

    在Java web页面开发中经常遇到检索条件包含一个开始日期、终止日期,输入后,查询符合该日期范围内的记录。对于这样的需求我们要了解清楚客户到底想要检索出什么样的数据。如果检出的数据包含了以下几种情况,那么就基本能够满足绝大多数需求:

    1、表中数据的开始日、终止日完全落在检索条件范围内;

    2、表中的数据与检索条件范围有交集;

    3、表中的数据完全包含了检索条件范围;

    4、表中数据的日期范围完全落在检索条件范围之内。

    一般来说客户需要的数据可能是以上4中情况中的任何一种之一,都需要检索出来。符合以上4中case的SQL文如下:

    //委托时间开始、委托时间结束都不为空
    sql.append(" and (to_char(b.start_Time,'YYYYMMDD') between :startTime and :endTime");
    sql.append(" or to_char(b.end_Time,'YYYYMMDD') between :startTime and :endTime)");
    
    
    //委托时间开始不空、结束时间为空
    if(!StringUtil.isEmpty(strTmp_1) && StringUtil.isEmpty(strTmp_2)){
       	sql.append(" and to_char(b.start_Time,'YYYYMMDD') >=:startTime ");
    }
    //委托时间开始空、结束时间为不空
    if(StringUtil.isEmpty(strTmp_1) && !StringUtil.isEmpty(strTmp_2)){
    	sql.append(" and to_char(b.end_Time,'YYYYMMDD') <=:endTime ");}

    这样就包含了以上所有情况。

    展开全文
  • 一个日期字段作为查询条件。 这时就要使用格式化日期的函数进行日期的比较。 实现 成功的示例代码: SELECT COUNT ( 1 ) FROM bus_logistics_order WHERE deleted_flag = '0' AND CONVERT ( VARCHAR ( 100 ...
  • access 数据库写按日期查询SQL

    千次阅读 2020-01-07 15:30:50
    按具体某一年查询数据 select sum(amount) from 表名 where format(createtime,"yyyy")=2020 按具体某一年某个月查询 select sum(amount) from 表名 where format(createtime,"yyyymm")=202001 按月统计某一年的...
  • 使用sql语句查询日期

    2014-08-09 13:40:56
    使用sql语句查询日期 select * from ShopOrder where datediff(week,ordTime,getdate()-1)=0 //查询当天日期在一周年的数据 select * from ShopOrder where datediff(day,ordTime,getdate()-1)=0 //查询当天的所有...
  • 公司开发中自己负责的模块业务需要根据用户选择内容去查询数据库,其中会计期间是必须的条件,默认为当前日期。用户只需要根据需要去输入就可以进行相关查询。不选择不拼接。 直接上图上代码!!! 后台打印...
  • mybatis的时间条件查询sql语句

    千次阅读 2018-05-09 13:40:44
    一:sql server数据库的查询时间的方法 sql server提供这样的函数给我们查询 select * from student where YEAR(comeyear)=2015 select * from student where month(comeyear)=9 select * from student where day...
  • sql 查询日期条件的优化

    千次阅读 2007-08-16 13:21:00
    1.实例分析如下: select count(0) from info_terminal_user a where trunc(a.REG_DATE,'dd') = sysdate; 执行计划 ...2.总结:日期条件出现的时候尽量不要在日期字段上面做运算,把运算转移到字段的外边;
  • SqlServer查询日期时间范围条件

    千次阅读 2014-04-18 11:08:00
    --查询当天: select * from info where DateDiff(dd,datetime,getdate())=0 --查询24小时内的:  select * from info where DateDiff(hh,datetime,getDate())&lt;=24   --本月记录 SELECT * FROM 表 ...
  • SQL中对日期查询条件的规范写法

    千次阅读 2009-09-06 11:29:23
    发现开发人员在针对日期字段作SQL的Where条件时,每个人的写法五花八门,已看到的有以下写法: 1、AND to_char(sh.creation_date, 'YYYY-MM-DD') >= '2009-08-26' 2、AND to_date(to_char(sf.creation_date...
  • java加mysql按时间条件查询sql语句

    千次阅读 2017-03-02 18:44:19
    java代码如下:Date date=new Date(); SimpleDateFormat dateFormater = new SimpleDateFormat("yyyy-MM-dd"); String dateStr = dateFormater.format(date);...String sql = "select db_test.* from db_test wh
  • 关于 java 按时间条件查询 sql语句

    千次阅读 2016-11-14 13:03:27
    oracle 按时间查询可以有2种形式 to_date and to_char for example: // 将数据库字段转成char 进行查询 select * from tableName where to_...//将条件转成date进行查询 select * from tableNmae where time 两者
  • SQL 截取日期作为条件

    千次阅读 2016-02-24 11:33:14
    不错,SQL时间格式很全面原文地址:截取日期作为条件">SQL 截取日期作为条件作者:楼漫画select * from dbo.mzsjb02 where CONVERT(CHAR(10), 字段名, 23)='2011-08-31'   比如,日期的字段名是 “进货日期”,...
  • 需要查询更新时间大于发布时间的对象;同时还要适配MySQL和Oracle两种数据库; 实现 思路 1.对传进来的时间参数进行格式化; 2.通过读取配置文件来判断是MySQL数据库还是Oracle数据库; 3.分别使用不同的sql语句...
  • sql 时间条件查询

    2019-08-22 11:13:18
    sql查询当天所有记录 to_date()使用 select * from table t where t.time >= to_date(aaaa,'yyyy-mm-dd hh24:mm:ss') and t.time<to_date(bbbb,'yyyy-mm-dd hh24:mm:ss') aaaa,bbbb是字符串类型 比如:aaaa...
  • SQL Server模糊查询日期查询

    千次阅读 2017-03-31 18:27:12
    首先看下SQL查询有关的通配符 打开菜鸟教程举个例子,在sql server中 比如“一元天”这些字的顺序可以是任意的,而且也可以不相邻,把所有的情况都查询出来: 。。。一。。。元。。。天。。。” “天;;;;...
  • 曾经遇到这样的情况,在数据库的Meeting表中有PublishTime (DateTime,8)字段,用来存储一个开会时间,在存入时由于要指明开会具体时间,故格式为yyyy-mm-dd hh:mm:ss,而我们查询时是通过yyyy-mm-dd来进行的,即查询某一天...
  • 自己初次学习使用sql server(因为以前用的是sqldeveloper啦)然后实习的第一个小作业是显示满足总产量95%时显示出当时的生产日期,一开始小迷茫,后来有cursor帮忙就好啦~cursor真的强大
  • 基于jquery js自定义sql条件查询

    热门讨论 2013-09-04 10:00:02
    用户自己定义动态组织sql查询条件,对于用户来说相当方便的啦。可以自由选择查询字段、条件条件条件值,选择与或关系,包括括号优先的使用。根据查询字段不同,查询条件值的动态改变,如日期控件、下拉框、可输入...
  • sqlserver 年月日为条件查询记录

    千次阅读 多人点赞 2011-09-15 17:06:02
    今天做一个东西的时候,要查某年,某月的记录,从网上找到了sqlserver中的datepart函数,该函数是用来提取年份,月份,日期的一个函数,带两个参数,第一个为(yy,mm,dd)其中一个,表示年月日,第二个参数为字段...
  • 查询出的结果,同一天,同样的颜色的商品代码显示一行,数量求和。 现在查出来的格式是这样: 日期 商品年份 季节 波段 商品代码 颜色 数量 2019-7-19 2019 秋 40 MAH3AQ1740S 80 5 2019-7-19 ...
  • 单表无条件和有条件查询SQL语句

    千次阅读 2020-05-26 15:16:18
    直接上简单查询SQL语句------------ ...(2) 查询所有学生的学号、姓名、性别和出生日期。 SELECT sno,sname,ssex,bday FROM students; (3) 查询所有课程的课程名称。 SELECT cname as 课程名称 FROM course;
  • SQL 三表联合查询用法 及 如何将日期数据的格式进行转换 SQL三表联合查询 如下三张表 表1–TableName1 NAME AGE amy 18 表B—TableName2 NAME ID amy 123456 ...
  • 在数据表中字段A的类型为SmallDatetime,如果要查询词表数据并A字段为查询条件 例:select * from Table_A where A between '2017-04-01 00:00:00' and '2017-04-06 23:59:59' 我们想要的数据是 1号 到 6号的...
  • 关于sql语句中日期查询

    万次阅读 2018-12-19 19:55:18
    第一种方法:查询2018年1月到2018年10月的数据 select * from 表名 where times between “2018-01-01” and “2018-10-31”; 第二种方法:查询2018年1月到2018年10月的数据(使用 “%”) select * from 表名 where...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 132,656
精华内容 53,062
关键字:

以日期条件查询sql