1. sql查某一天的数据怎么查
你这个是SQL server,查询方式不一样
select * from data where (括号里面是列名称) between '2012-11-11' and '2012-11-12'
2. sql中如何取某一日期前一天的数据
select *,sum(来访人数字段) from 表名称 group by 日期字段
直接使用group by 就可以了
如果需要只取某个或某两个日期的数据
select *,sum(来访人数字段) from 表名称 where 日期='2012-11-01 ' or 日期='2012-11-03 ' group by 日期字段
3. 如何用sql server的select语句实现从30天的数据中中提取其中某一天的数据
where recordtime between 2012/10/1 00:00:00 and 2012/10/1 23:59:59
或者
where recordtime between convert(datetime,@date1,120) and convert(datetime,@date2,120)
@date是你输入的查询时间,120是时间格式yyyy-mm-dd hh:mi:ss(24h)
希望对你有用,谢谢
4. SQL语句怎么查询在某日期之前的数据
工具/材料:Management Studio。
1、首先在桌面上,点击“Management Studio”缺衡图标。
5. SQL 查询语句 查询某天的数据
select * from news where
substring(Convert(char(10),date,112),1,8)='20090112'
按日查
substring(Convert(char(10),date,112),1,8)='20090112'
按月查
substring(Convert(char(10),date,112),1,6)='200901'
按年查
substring(Convert(char(10),date,112),1,4)='2009'
6. 如何用SQL语句,查询数据库中等于某一天的记录
select*from表名where日期字段='2017-01-01'
--如果是带有时间的话
select*from表名where日期字段>='2017-01-0100:00:00'and日期字段<='2017-01-0123:59:59'
--或者简单一点
select*from表名where日期字段>='2017-01-01'and日期字段<'2017-01-02'
7. sql如何一次取出2天的数据(有时候某些天没数据),求思路
按照你给的说法和例子( 1号3条数据,2号没有数据,3号2条数据,),那么所谓的一次两天,应该是取出1号和3号的5条数据,是这个意思吧。
假设4,5号都有数据,那么现在是(1有数据,2没数据,3有数据,4有数据,5有数据)其他不算,就说这五天
那么你说的一次取出两天的数据怎么取?从后往前,还是从前往后,亦或是随便取?还是多次取,每两天的都取出来?给的需求并不是十分明确。
个人认为最大的可能是从后往前,或者某一个时间段往前或者往后。
如果是数据块的话很好写,定义两个变量,两个初始都是0,我们假设为a,b,a代表有数据天数,b代表天数。输入当前日期(查询日期),然后在表内对当前日期进行count计数,如果计数不为0,那么a=a+1,b=b±1(根据向前还是向后查询自己分配),如果计数为0,那么只b±1,然后判断一下a是否等于2,如果a不等于2,那么继续循环,直到循环出现两个计数不为0的天,那么a=2了,然后就能退出循环,这是查询出的内容就是两天的。
如果是单条sql的话,考虑到查询的当天可能也没有数据,比如你要查询2号(包含)往后的两天(一般来说是2号和3号的数据),但是2号没有数据,所以输出的应该是3号和4号的数据。
单独的sql好像能写出来,我说一个思路,开窗函数,你对找出来的数据,比如大于等于2号的数据进行排序,这个排序是开窗(oracle的话这里用rank,其他数据不知道),其他数据库不知道)的排序,(不分组,按照日期的截取到日去排序,也就是不算具体的时间,而是1号,2号,这样的排序)这时,3号的所有数据会被标记为1,4号的所有数据被标记为2,然后再截取排序号小于等于2的就可以了。
其他的还有,不过要么是计数,要么是开窗排序,而且不一定能写出来,或者就算写出来了,可能也比较耗费资源,估计可用性不大。