1. sql server 日期范围查询
SELECT * FROM 表明 WHERE 日期字段名 BETWEEN '20130101' AND '20130130'
或者:
SELECT * FROM 表明 WHERE 日期字段名 BETWEEN CONVERT(datetime,'2013-01-01',120) AND CONVERT(datetime,'2013-01-30',120)
(1)sql怎么设置日期区间扩展阅读:
注意事项
在写按时间段查询的sql语句的时候 一般我们会这么写查询条件:
where date>='2010-01-01' and date<='2010-10-1'。
但是在实执行Sql时些语句会转换成这样:
where date>='2010-01-01 0:00:00' and date<='2010-10-1:0:00:00',再看这个条件的话,就会有些明白,那就是'2010-10-1 0:00:00' 之后的数据例如('2010-10-1:08:25:00')查不到,也就是说2010-10-1的数据查不到。
修改查询条件为:
where date>='2010-01-01' and date<='2010-10-1 23:59:59' 或 where date>='2010-01-01' and date<='2010-10-2'。
某个表某个字段是Datetime型 以"YYYY-MM-DD 00:00:00" 存放
2. 如何在SQL查询中设置时间格式
SQL的时间格式是:YYYY-MM-DD HH:NN:SS.sss
其sss是毫秒,由于计算机内部时钟晶振的问题,SQL时间最小单位为3毫秒。
一般SQL时间格式处理:大都采取转换格式至datetime格式
例如显示时常用到的:
1、将2015转换为当年的第一天:
selectcast('2015'+'-1-1'asdatetime)
输出结果为:2015-01-01 00:00:00.000
2、将2015-02转换为当年的第一天:
selectcast('2015-02'+'-1'asdatetime)
输出结果为:2015-02-01 00:00:00.000
其实以上可以总结为将具有一定格式的字符串转换为日期类型,只要将年月日补全,后面的时间会默认为0时0分0秒0毫秒
3. 怎么用SQL实现日期区间遍历每天数据
以下可以达到你的要求不?
SQL code
?
SELECT 开始日期
,结束日期
,用户ID
,工作内容
FROM 基础数据
,(SELECT TO_DATE('2010/12/01', 'YYYY/MM/DD') + ROWNUM - 1 DAY_DATE FROM DUAL CONNECT BY ROWNUM < 32) DT
WHERE 基础数据.开始日期 = DT.DAY_DATE
4. sql里面如何设置查询的时间范围
对 SQL SERVER 数据库
----------------------------
SELECT * FROM 表名 WHERE 离岗时间<'2005-10-30'
SELECT * FROM 表名 WHERE 离岗时间 BETWEEN '2005-1-1' AND '2005-10-30'
------------------------------------
对 ACCESS
----------------------------
SELECT * FROM 表名 WHERE 离岗时间<#2005-10-30#
SELECT * FROM 表名 WHERE 离岗时间 BETWEEN #2005-1-1# AND #2005-10-30#
5. 数据库的日期区间查询方法。
access中有个mid函数,可以用来截取字符串或者日期。
select * from 表名 where mid([TestTime],5,10) ='04/19/2013'其中,5代表截取的开始位置,从左数,10代表截取的长度。
数据库的日期区间查询有两种情况:
1:查询给定时间在开始时间列与结束时间列范围中数据;
2:查询日期列在开始时间列与结束时间列范围中数据。
第一种:<,>, <= , >=
select * from 表名 where 日期列 >= to_date('2015-10-20 00:00:00','yyyy-mm-dd hh24:mi:ss')
and t.日期列 <= to_date('2015-10-20 23:59:59','yyyy-mm-dd hh24:mi:ss')。
第二种 between and
select * from 表名 where 日期列 between to_date('2015-10-20 00:00:00','yyyy-mm-dd
hh24:mi:ss')and to_date('2015-10-20 23:59:59','yyyy-mm-dd hh24:mi:ss')。
(5)sql怎么设置日期区间扩展阅读:
SQL数据库语句:
创建数据库:
CREATE DATABASE database-name。
删除数据库:
drop database dbname。
创建新表:
create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..)。
删除新表:
drop table tabname。
增加一个列:
Alter table tabname add column col type。
添加主键:
Alter table tabname add primary key(col)。
删除主键:
Alter table tabname drop primary key(col)。
创建索引:
create [unique] index idxname on tabname(col….)。
删除索引:
drop index idxname。
创建视图:
create view viewname as select statement。
删除视图:
drop view viewname。
参考资料来源:网络-sql语句大全
6. SQL日期问题,怎么样按记录里的日期进行分类,15天一档
不知道你是什么数据库,只能写个意思,具体的内容要你自己搞定。
其实就是把日期字段截取一下,如果日期本身没办法截取,那就转换一下。比如如果是oracle那么可以用to_char转换为字符型,然后再截取。如果担心1月和10月截取重复,那就多截取一位,或者查找第二个/字符的位置截取。
截取完成后,在用截取后的日期和客户分组,金额汇总求和就可以了。
我比较熟悉oracle,我用oracle的写法尝试这写一个,如果不是oracle,那么你就要自己找找类似的了。(日期也可以直接截取,不过好长时间没写忘记怎么写了,就写一个转换的吧)
select
substr(to_char(日期),1,instr(to_char(日期),'/',1,2)-1)
月份,客户,sum(金额汇总)
from
table
group
by
substr(to_char(日期),1,instr(to_char(日期),'/',1,2)-1)
,客户
7. sql中如何批量修改指定区间日期
update RetailBillIndex set BillDate = add_months(BillDate,-12) where BillDate >= to_date('2017-07-01','yyyy/mm/dd') and BillDate < to_date('2017-09-01','yyyy/mm/dd');
8. 怎么修改sql数据库中的指定时间
方法和操作步骤如下:
1.首先,打开数据库并创建一个新表。由于日期格式的原因,所以两个date_time和time_time字段是日期类型,见下图,然后进入下一步。
注意事项:
SQL是结构化查询语言的简称。SQL是一种功能完备的数据库语言,它是一组用于数据库的操作命令。在使用它时,您只需要发出命令“做什么”,而“如何做”不是用户考虑的问题。
SQL数据库的数据体系结构基本上是三级结构,但是使用的术语不同于传统的关系模型术语。在SQL中,关系模式(schema)称为“基表”;内部模式称为“存储文件”;子模式(外部模式)称为“视图”;元组称为行;该属性称为列。
9. WinSQL怎么限日期
首先打开SQL SERVER的管理工具,然后我们选定一个数据库,点击新建查询
接下来我们在查询窗口中输入如下的SQL语句,如下图所示,将GETDATE方法得到的日期值和字符值拼接一下
运行以后会得到如下的错误提示,很明显,SQL SERVER不允许我们将日期和字符值拼接
接下来我们利用CONVERT函数对日期值进行字符串转换,如下图所示
运行SQL语句以后,你就会在输出结果中看到如下图所示的输出内容了
当然,如果你不想要上面的日期格式的话,你也可以自行选择的,只要指定一下样式ID即可,如下图所示
7
综上所述,SQL SERVER中的日期转化为字符类型运用CONVERT函数即可,注意样式ID的选择。
10. SQL 如何查询日期在一定范围内的数据
select * from 表 where 日期字段>='开始日期' and 日期字段<='截止日期' and convert(char(8),日期字段,108)>='开始时间' and convert(char(8),日期字段,108)<='截止时间'。
SELECT * FROM 表明 WHERE 日期字段名 BETWEEN '20130101' AND '20130130'。
例如:
select * from tb1 where dDate>='2010-11-05' and dDate<='2010-11-15'
and convert(char(8),dDate,108)>='8:00:00' and convert(char(8),dDate,108)<='9:00:00'.
select * from table1where year(d)=2010 and month(d)=7 and day(d) between 1 and 31
and (Datepart(hour,d)>=22 or Datepart(hour,d)<6)
(10)sql怎么设置日期区间扩展阅读:
SQL查询日期:
今天的所有数据:select * from 表名 where DateDiff(dd,datetime类型字段,getdate())=0
昨天的所有数据:select * from 表名 where DateDiff(dd,datetime类型字段,getdate())=1
7天内的所有数据:select * from 表名 where DateDiff(dd,datetime类型字段,getdate())<=7
30天内的所有数据:select * from 表名 where DateDiff(dd,datetime类型字段,getdate())<=30
本月的所有数据:select * from 表名 where DateDiff(mm,datetime类型字段,getdate())=0
本年的所有数据:select * from 表名 where DateDiff(yy,datetime类型字段,getdate())=0
参考资料:SQL_网络