A. 求统计每周记录数的sql语句
declare
@weeknum
int,@year
int,@month
int;--这里是周数、年、月
declare
@weekday
int,@starttime
datetime,@endtime
datetime,@timechar
varchar(20);--星期几、一周开始、一周结束、当月第一天字符串
declare
@datepart
int;--需要查询的周首天与月首天的时间差
--赋值2010年3月
第5周
select
@year=2010,@month=3,@weeknum=5;
set
@timechar=cast(@year
as
varchar)+'-'+cast(@month
as
varchar)+'-1'
--拼接出这个月的第一天
select
@timechar
select
@weekday=datepart(weekday,@timechar)
set
@datepart=(@weeknum-2)*7+(8-@weekday)
select
@starttime=dateadd(dd,@datepart,@timechar)
select
@endtime=dateadd(dd,7,@starttime)
--消除到上个月
及
下个月的出入部分
if
(@starttime<@timechar)
set
@starttime=@timechar
if
(@endtime>dateadd(mm,1,@timechar))
set
@endtime=dateadd(mm,1,@timechar)
select
@weeknum,@starttime,@endtime
--然后就是使用@starttime,@endtime
select
count(*)
from
tb
where
时间>=@starttime
and
时间<@endtime
B. sql 计算自然月周数按星期来计算,然后统计每周
没太理解你截图代码什么意思,我下面的例子可以通过输入年月得到该月份的总周数,使用的数据库是SQL SERVER 2005
DECLARE@yearint,@monthint,@tempdatadatetime,@sumdaymoney
SELECT@year=2015,@month=11
--先拼接成参数月份的第一天
SELECT@tempdata=convert(varchar(4),@year)+'-'+convert(varchar(2),@month)+'-01'
--统计参数月份总天数
SELECT@sumday=datediff(day,@tempdata,dateadd(month,1,@tempdata))
--计算参数月份一共几周
SEELCTceiling((@sumday-(casewhendatename(weekday,@tempdata)='星期一'then7.0
whendatename(weekday,@tempdata)='星期二'then6.0
whendatename(weekday,@tempdata)='星期三'then5.0
whendatename(weekday,@tempdata)='星期四'then4.0
whendatename(weekday,@tempdata)='星期五'then3.0
whendatename(weekday,@tempdata)='星期六'then2.0else1.0end))/7.0)+1
C. sql 求出最近10周的数据 和最近10个月的数据怎么求
select '最近10周' as 统计范围,日期,sum(数据) as 数据统计 from 表名
where 日期>dateadd(wk,-10,getdate()) group by datepart(wk,日期)
union all
select '最近10个月' as 统计范围,日期,sum(数据) from 表名
where 日期>dateadd(mm,-10,getdate()) group by datepart(mm,日期)
--当然,有编号(主键)也要:
--group by datepart(mm,日期) ,编号
D. sql 计算自然月周数按星期来计算,然后统计每周
sql 计算自然月周数按星期来计算,然后统计每周 没太理解你截图程式码什么意思,我下面的例子可以通过输入年月得到该月份的总周数,使用的资料库是SQL SERVER 2005
DECLARE @year int,@month int,@tempdata datetime,@sumday moneySELECT @year=2015,@month=11--先拼接成引数月份的第一天SELECT @tempdata=convert(varchar(4),@year)+'-'+convert(varchar(2),@month)+'-01'--统计引数月份总天数SELECT @sumday=datediff(day,@tempdata,dateadd(month,1,@tempdata))--计算引数月份一共几周SEELCT ceiling((@sumday-(case when datename(weekday,@tempdata)='星期一' then 7.0 when datename(weekday,@tempdata)='星期二' then 6.0 when datename(weekday,@tempdata)='星期三' then 5.0 when datename(weekday,@tempdata)='星期四' then 4.0 when datename(weekday,@tempdata)='星期五' then 3.0 when datename(weekday,@tempdata)='星期六' then 2.0 else 1.0 end))/7.0)+1
在Excel表中计算自然月每周周未加班餐费
首先要知道你的那一行日期单元格中的资料 是什么格式的?
比如6 在编辑栏中是什么?也是6 还是2013-7-6? 还有你的月份 单元格B1 的七月 它的资料格式是?
这些你要交代清楚 还有你这个表的列标 等 你这样贴图 大家看起来很累 不能直接回答你的问题 而只能做很多的假设……
主要方向:使用Suproct
补充一下 然后给你答案……
参见附件 把你的 日期资料修改一下 吧 这样容易计算……
java学期周数的计算,求算法
一个简单的日期计算程式
import java.util.*;
import java.text.*;
public class DateCalculator
{
Date standardDate;
DateFormat mf = new SimpleDateFormat( "yyyy.MM.dd ");
Calendar cal = Calendar.getInstance();
Calendar cal_temp = Calendar.getInstance();
public DateCalculator()
{
try{
standardDate = mf.parse( "2000.01.01 ");
}
catch(ParseException ep){
ep.printStackTrace();
}
}
设定基本日期,使用 "yyyy.MM.dd "格式的字串
public boolean setStandardDate(String str)
{
Date date;
try{
date = mf.parse(str);
}
catch(ParseException ep){
ep.printStackTrace();
return false;
}
standardDate = date;
return true;
}
public boolean setStandardDate(Date date)
{
standardDate = getOnlyDate(date);
return true;
}
year 为年数
month 为月份,以 0 开始,与系统的不同,取值 0-11
为的是与Java的内部使用相容
day 为日期天数
public boolean setStandardDate(int year,int month,int day)
{
cal.clear();
cal.set(year,month,day);
standardDate = cal.getTime();
return true;
}
public boolean setStandardDate(long time)
{
standardDate = getOnlyDate(time);
return true;
}
public Date getStandardDate()
{
return standardDate;
}
取得一个只有日期,不含有时间的日期,也就是时间是 0时 0分 0秒.
public Date getOnlyDate(Date date)
{
cal.setTime(date);
cal_temp.clear();
cal_temp.set(cal.get(Calendar.YEAR),cal.get(Calendar.MONTH),cal.get(Calendar.DAY_OF_MONTH));
return cal_temp.getTime();
}
public Date getOnlyDate(long time)
{
cal.setTimeInMillis(time);
cal_temp.clear();
cal_temp.set(cal.get(Calendar.YEAR),cal.get(Calendar.MONTH),cal.get(Calendar.DAY_OF_MONTH));
return cal_temp.getTime();
}
使用一个字串取得一个日期,样式 "yyyy.MM.dd "格式的字串
public Date getDate(String str)
{
Date date;
try{
date = mf.parse(str);
}
catch(ParseException ep){
ep.printStackTrace();
return getOnlyDate(new Date());
}
return date;
}
使用输入的日期减去标准日期,得到相差的天数
public int sub(Date date)
{
long temp = date.getTime()-standardDate.getTime();
if(temp> 0)
{
return (int)(temp/(24*60*60*1000));
}
else
{
return (int)(temp/(24*60*60*1000))-1;
}
}
使用 b_date - j_date 得到相差的天数
public int sub(Date b_date , Date j_date)
{
Date date = getOnlyDate(j_date);
long temp = b_date.getTime()-date.getTime();
if(temp> 0)
{
return (int)(temp/(24*60*60*1000));
}
else
{
return (int)(temp/(24*60*60*1000))-1;
}
}
得到标准日期减去几天后的日期
public Date add(int day)
{
cal.setTime(standardDate);
cal.add(Calendar.DATE,day);
return cal.getTime();
}
得到 date 减去几天后的日期
public Date add(Date date , int day)
{
cal.setTime(date);
cal.add(Calendar.DATE,day);
return cal.getTime();
}
public static void main(String args[])
{
DateCalculator temp = new DateCalculator();
Date d = temp.getDate( "2003.01.01 ");
int i = temp.sub(new Date(),d);
System.out.println (i);
}
}
员工年假是从入职日期算,按照自然月来计算吗?
员工年假规定是从入职日期算。
1、以入职时间开始计算的。
2、根据我国〈职工带薪年休假条例〉规定:
第三条 职工累计工作已满1年不满10年的,年休假5天;已满10年不满20年的,年休假
10天;已满20年的,年休假15天。国家法定休假日、休息日不计入年休假的假期。
请问爱音乐下载包月计费歌曲是按照31天来计算还按照自然月计算?
这个是按月计算。不管是2月的28天还是1月的31天都是按月计费。
爱音乐中的音乐包,是音乐盒的升级版,是4G时代下中国电信爱音乐为天翼使用者提供专属的音乐内容综合服务。使用者订购音乐包产品后,可获得一个包含5-10首歌曲的音乐盒(每月定期更新歌曲)、可在爱音乐各大门户区、APP应用中,免费下载和试听相应歌曲,免费订购相应的彩铃。
冻胚自然周期预产期怎么计算
我也是自然周期生殖中心的医生也是按我月经算的预产期,但是我去预约NT的时候产科医生就是从移植日往前推17天算末次月经。 不过我就相差三天的样子,第17天排卵的。 检视原帖>>
VBA 计算周数的方法
假定A=WWYY代表20YY年WW周,B代表A到现在有多少周。则:
A=1213
B = DateDiff("ww", Right(A, 2) & "-1-1", Now()) - Int(A / 100)
孕期周数计算,请帮忙下
其实计算怀孕周期一般有两种算法,一是以末次月经时间来潮当天作为怀孕第一天,再有就是根据B超结果来估测,由于各自的月经周期不一样,那么就会导致这两个时间有出入,因为B超参考的是正常月经周期怀孕后的情况。
从你的末次月经时间来算,到4月9号就是怀孕180天,就是怀孕25加5天,就这么简单。如果B超检查估测的周期与这个时间基本吻合(前后相差在两周以内),就是正常的。
工行信用卡计年费是按自然年月来计算么??
不是,按你开通的那一天开始进行计算的。
E. 如何写SQL语句按周统计和按季度统计
--sqlserver2005语法统计按周,月,季,年。
--按日
--selectsum(price),day([date])fromtable_namewhereyear([date])=
'2006'groupbyday([date])
--按周quarter
selectsum(price),datename(week,price_time)fromble_namewhere
year(price_time)='2008'groupbydatename(week,price_time)
--按月
selectsum(price),month(price_time)fromble_namewhereyear(price_time)
='2008'groupbymonth(price_time)
--按季
selectsum(price),datename(quarter,price_time)fromble_namewhere
year(price_time)='2008'groupbydatename(quarter,price_time)
--按年
selectsum(price),year(price_time)fromble_namewhere
year(price_time)>='2008'groupbyyear(price_time)
F. sql server 怎么查看最近一周的数据
如果数据库是SQL Server,可以这样做: 找到输入日期的所在的周一,然后将数据范围限制在这个周一到下个周一之间(包括此周一,不包括下个周一)。所以,关键就在计算周一是哪一天(SQL Server中一周第几天受@@datefirst影响,默认值为7,即周日为一周第一天,但是这里需要周一为一周开始)。
declare @dateValue datetime, @startDay datetime
set @dateValue = '2014-11-11' -- 赋需要查询的日期值,不包含时分秒
set @startDay = dateadd(d, CASE WHEN datepart(dw, @dateValue) + @@DATEFIRST > 8 THEN 8 - @@datefirst ELSE 1 - @@datefirst END, dateadd(d, - datepart(dw, @dateValue) + 1, @dateValue))
select *
from data_table
where date_field >= @startDay and date_field < dateadd(d, 7, @startDay) --将数据限制在从周一开始的7天内
order by date_field -- 按日期升序排列
如果是其他数据库,则可以使用类似方法实现。
G. sql统计每周日数据
题目没看懂,提供一些有用的函数
SELECTDATEPART(WEEKDAY,GETDATE())AS'今天是本周第几天',DATEPART(WEEK,GETDATE())AS'今天在本年第几周';
H. SQL中 我给个时间段 要把这个时间段中 每个星期的数据统计到一起
告诉你个思路
sql里面有个方法可以获取一个日期的当前是多少周,然后group
by
这个就可以了
sql里取第几周是从星期天开始算的
你要SET
DATEFIRST
1
就是星期一了
I. 求统计每周记录数的SQL语句
新建一个周信息表,存储周信息(周号、周开始时间、周结束时间)
你的周是按照自然周,还是按月结的周?自然周就不用说了,正常的周一到周日。按月结的,就是所有的周都落在一个月内,不会存在跨月的情况。比如2010年1月第一周就是 2010年1月1日到2010年1月9日,这样一周可能大于七天,也可能小于7天。
按照自然周的给你个方法:
create table bga050t (weak_no varchar(10),
strt_dt datetime,
end_dt datetime
CONSTRAINT [PK_bga050t] PRIMARY KEY CLUSTERED
(
[weak_no]
) ON [PRIMARY]
)
declare @weak_no varchar(18)
declare @strt_dt datetime
declare @end_dt datetime
declare @n int
set @n=1
set @strt_dt = '2007-12-31'
set @weak_no = ''
WHILE(@strt_dt < '2021-01-04')
BEGIN
IF @weak_no<>left(convert(varchar(10),@strt_dt,120),8)
BEGIN
set @weak_no=left(convert(varchar(10),@strt_dt,120),8)
set @n=1
end
set @end_dt= dateadd(d,6,@strt_dt)
insert into bga050t (weak_no,strt_dt,end_dt)
values(@weak_no+convert(varchar,@n),@strt_dt,@end_dt)
set @n=@n+1
set @strt_dt=dateadd(d,1,@end_dt)
END
你要查询年月周只需要把周号分解就可以了。
select a.* from 表 inner join
bga050t b on a.dt between b.strt_dt and b.end_dt
where left(b.weak_no,7)='2009-02' and [周数] = right(b.weak_no,1)
J. sql 语句怎么查询一周的数据
select * from ShopOrder where datediff(week,ordTime,getdate()-1)=0 //查询当天日期在一周年的数据
select * from ShopOrder where datediff(day,ordTime,getdate()-1)=0 //查询当天的所有数据
--查询当天:
select * from info where DateDiff(dd,datetime,getdate())=0
--查询24小时内的:
select * from info where DateDiff(hh,datetime,getDate())<=24
--info为表名,datetime为数据库中的字段值
--查询当天:
select * from info where DateDiff(dd,datetime,getdate())=0
--查询24小时内的:
select * from info where DateDiff(hh,datetime,getDate())<=24
--info为表名,datetime为数据库中的字段值