SQL Server中的两个参数分组
我有一张这样结构的桌子:SQL Server中的两个参数分组,sql,sql-server,Sql,Sql Server,我有一张这样结构的桌子: id | timestamp | barcode 时间戳是datetime,条形码是完整的条形码,我只需要其中的前9位数字 我需要通过一个查询获取每天每种产品的计数 所以我基本上需要这样的结果: date | item number | count -----------+-------------+-------- 12.02.2019 | 827384950 | 32 项目编号为左侧(条形码,9)您可以在下面进行尝试-使用cast()将时间戳转换
id | timestamp | barcode
时间戳是datetime,条形码是完整的条形码,我只需要其中的前9位数字
我需要通过一个查询获取每天每种产品的计数
所以我基本上需要这样的结果:
date | item number | count
-----------+-------------+--------
12.02.2019 | 827384950 | 32
项目编号为
左侧(条形码,9)
您可以在下面进行尝试-使用cast()
将时间戳转换为日期,然后将其添加到分组中
select cast([timestamp] as date),left(barcode, 9) as itemnumber,count(*)
from tablename
group by cast([timestamp] as date),left(barcode, 9)
您可以在下面尝试-使用
cast()
将时间戳转换为日期,然后将其添加到分组中
select cast([timestamp] as date),left(barcode, 9) as itemnumber,count(*)
from tablename
group by cast([timestamp] as date),left(barcode, 9)
此查询具有更好的性能
select date, itemnumber, count(*) from
(select cast([timestamp] as date) as date,left(barcode, 9) as itemnumber
from tablename) a
group by date,itemnumber
此查询具有更好的性能
select date, itemnumber, count(*) from
(select cast([timestamp] as date) as date,left(barcode, 9) as itemnumber
from tablename) a
group by date,itemnumber
只晚了20秒…:)嘿,这太棒了!我可以补充一下我的问题吗?这样我就不用再做一个新的后续话题了。如果我想按
shift
对它们进行分组,你会推荐什么呢?如果shift 1
是06:00:00到14:29:59
在datetime时间戳中,shift 2
是14:30:00到22:59
。。。等等?如果你在@Maximilinberbechelovokay中添加一个单独的问题,那就太好了:)只晚了20秒…:)嘿,这太好了!我可以补充一下我的问题吗?这样我就不用再做一个新的后续话题了。如果我想按shift
对它们进行分组,你会推荐什么呢?如果shift 1
是06:00:00到14:29:59
在datetime时间戳中,shift 2
是14:30:00到22:59
。。。等等?如果你能添加一个单独的问题@MaximilianBerbechelovOkay,那就太好了:)