![](/img/trans.png)
[英]Convert a MySQL statement containing where, group by, sum and having to Linq to Sql
[英]SQL statement group? or sum?
我是SQL的新手,所以需要一些幫助。 這是我的代碼
Select
MITARBEITER_NR "ID",
DAUER "Duration",
datum "Date"
From
Vtsbreak
Where DATUM >= TO_DATE('2017/04/01', 'yyyy/mm/dd') AND DATUM <= TO_DATE('2017/05/27','yyyy/mm/dd')
order by datum
這是我的數據
ID Duration Date
443 60 03/04/2017
412 10 03/04/2017
399 100 04/04/2017
374 10 04/04/2017
374 10 04/04/2017
376 120 04/04/2017
456 300 04/04/2017
372 120 04/04/2017
443 60 04/04/2017
446 300 04/04/2017
427 60 04/04/2017
403 420 04/04/2017
我想做的是返回ID碼,日期,我嘗試使用組的該日期的持續時間總和,但只返回ID 374 for 04/04/2017的一種情況,其值為10而不是20
有什么建議嗎?
您想要GROUP BY
。 按照您使用的語法(但絕對不是MySQL),您可以執行以下操作:
select MITARBEITER_NR as id,
to_char(datum, 'YYYY-MM-DD') as yyyymmdd,
sum(dauer) as duration
from Vtsbreak
where datum >= DATE '2017-04-01' and
datum < DATE '2017-05-28'
group by id, to_char(datum, 'YYYY-MM-DD')
order by yyyymmdd;
排序
Select
MITARBEITER_NR "ID",
sum(DAUER) "Duration",
datum "Date"
From
Vtsbreak
Where DATUM >= TO_DATE('2017/04/01', 'yyyy/mm/dd') AND DATUM <= TO_DATE('2017/05/27','yyyy/mm/dd')
group by MITARBEITER_NR, datum;
order by datum
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.