1樓:網友
-按日。select sum(consume),day([date]) from consume_record where year([date]) 2006' group by day([date])
按周quarter
select sum(consume),datename(week,[date]) from consume_record where year([date]) 2006' group by datename(week,[date])
按月。select sum(consume),month([date]) from consume_record where year([date]) 2006' group by month([date])
按季。select sum(consume),datename(quarter,[date]) from consume_record where year([date]) 2006' group by datename(quarter,[date])
你試試看。指定日期你就看上面的例子變通下呀,無非就是乙個聚合函式和group by
select [date],sum(consume) from consume_record where [date] between '2006-06-01' and '2006-07-10' group by [date]
btw to_char是oracle裡面的轉換函式。
請假統計sql
2樓:網友
沒說什麼資料庫,sqlserver為例。
建立測試表。
create table test
姓名 varchar(10),事由 varchar(10),開始時間 datetime,結束時間 datetime)
insert into test values ('張三','事假','2014-07-21','2014-07-23')
insert into test values ('李四','事假','2014-07-22','2014-07-24')
insert into test values ('王武','病假','2014-07-23','2014-07-24')
執行select t.時間,sum(case when t.事由='病假' then 1 else 0 end) 病假,sum(case when t.
事由='事假' then 1 else 0 end) 事假。
fromselect a.姓名,a.事由,a.開始時間+ 時間。
from test a,(select number from master..spt_values
where type='p' and number<=(select max(datediff(day,開始時間,結束時間)) from test)) b
where datediff(day,a.開始時間,a.結束時間)>= t
group by t.時間。
結果<>
3樓:網友
select 日期,請假類別,count(*)
from 表。
group by 日期,請假類別。
遇一問題,求高手解答。 sql server單表統計,求歷年、某一時段的資料統
4樓:匿名使用者
假設你需要統計的資料欄位為num,然後需要統計每一年10號到6月18號。
num欄位的總數,那麼sql語句可以這樣寫:
select year(date)m ,sum(num) from table
where right(convert(varchar(8),date,112),4) between '0510' and '0618' -每年的5月10號到6月18號的資料。
group by year(date)--按年份分組。
convert(varchar(8),date,112)是把date欄位的時間(2016-05-15)轉換格式,轉換成如:20160525,然後使用right函式,擷取後面的月份跟日期,擷取4位數為:0515
sql一道統計的小問題,求解
5樓:移動引領生活
with t as
select '慶雲' as v1 ,'' as v2 ,'1' as v3
union all
select '慶雲','' , '1'
union all
select '慶雲' ,'', '3'
union all
select '慶雲' ,'', '1,2,3'
union all
select '王琪' , '0,1,2,3,4', '1,2,3'
union all
select '王琪','2','3'
union all
select '王琪', '0', '1'
union all
select '王琪','1','1'
union all
select '王冉','3','3'
union all
select '王冉','1,3,4','1,2,3'
select v1,sum(charindex(v2,v3))*v3))*100 from t group by v1
sql 請假天數的計算問題 排除節假日和週末
6樓:
select ,a.姓名,a.狀態,開始日期,結束日期,max(結束日期)-max(開始日期)+1-count( as 請假天數。
from a
left join b on in ('節假日','週末')and between a.開 始日期 and a.結束日期。
group by ,a.姓名,a.狀態,開始日期,結束日期。
sql計算請假時長函式
7樓:網友
那個文章已經把過程寫得很清楚了麼,照著寫語句實現就好了哦。
excel 如何統計請假人數
8樓:萊昂納德_尤拉
=sumporduct((sheet1!$a$2:$a$5000=a2)*(sheet1!$d$2:$d$5000="請假"))
a2為表2要查詢的班級引用。
sheet1為表1名稱。
a$2:$a$5000為表1班級資料區域$d$2:$d$5000為表1請假資料區域根據自己的**格式修改。
9樓:小葉
你上面已經很好了 可以把請假給去掉 因為你這個表就是為請假做的 所以省掉 加入乙個請假次數、、
10樓:網友
輸入公式:
countif(a:a,f2)
解釋:函式為計數,a:a為第乙個表的統計區域,f2為第二個表的班級,公式寫在請假人數的單元格。
11樓:網友
有沒有圖呀,沒有資料怎麼幫你呀。
12樓:網友
a2輸入。
sum((sheet1!a:a=a1)*(sheet1!d:d="請假"))
按住ctrl+shift+回車。
sql中怎麼統計工作日出勤情況
13樓:網友
1.你還得有張日期表,規定一年365天哪天是週末,哪天是節假日,也就是日期型別(其實就是日曆)
2.出勤表中日期和日期表中的日期連線根據日期型別就知道哪天是節假日哪天是正常上班時間了。
3.曠工天數應該就是出勤表中上班簽到時間或者下班簽到時間為空的話就算曠工了。
4.休息日加班天數就是出勤表和日期表連線,日期型別是休息日,並且上班簽到和下班簽到時間都不為空了。
總之,有張日期表什麼都能檢索出來了。
14樓:眾口說車
這個不是簡單的sql能獨立完成的!!!
你可能還需要乙個前端!!
當然你可以用手工把你的資料輸入,但資料量實在太大。所以,沒辦法給你幫助!!
15樓:網友
你至少給個詳細的吧。比如:休息日加班是否應該有個週末的標識,加班時間段是否有個限制。我什麼不知道也沒辦法寫啊。我不能再去幫你算那天是週六週日吧?
SQL排序問題,高手請進,SQL 排序問題,高手請進
declare a int set a 3 select top 5 id from select id,1 as flag from a where id not in select top a 1 id from a union select top a 1 id,2 as flagfrom a...
excel高手請進,關於統計問題
在baiz5中寫公du式 zhi if x5 60,否 dao if and d5 60,g5 60 否 if countif d5,60 countif g5,60 countif j5,60 countif m5,60 countif m5,60 countif p5,60 countif q5...
向高手們請教excel問題,向高手們請教一個excel問題
if iserror vlookup c1,a b,2,false c1,if vlookup c1,a b,2,false d1,c1,向下填充公式.聽你的描述,主要困難是不是扣款表和工資表中的排列順序不一樣,比如 扣款表中張三在第一行,而在工資表中是第10行。如果這樣的話很簡單,你重新對兩個表進...