我尝试构建一个集成了其他变量的变量。 其中之一将是自动增量字段的编号,以后将在该字段中执行插入查询。 我尝试使用: 在此之前,我没有任何更新/插入查询,因此无法使用 这就是为什么我认为我可以只计算auto_increment行的数量并拥有构建新变量所必需的最后一个变量 ...
提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供 中文繁体 英文版本 中英对照 版本,有任何建议请联系yoyou2525@163.com。
我正在尝试选择已经通过我们的数据库的订单数量。
从订单中,我想要检索3个部分
如果订单只包含免费样品,那么该订单的总价值自然为0
,如果是正常订单,则总量自然会>0
总字段为十进制格式。
这就是我此刻想要做的事情。
COUNT(gross) as 'TotalOrders',
COUNT(case when gross = 0.00 THEN null else gross end) as 'OrderCount',
COUNT(case when gross > 0.00 THEN gross else null end) as 'Samples',
如果订单具有正的gross
我怎样才能使COUNT()
函数仅增加1?
我在SQLServer
这样做
我的结果显示TotalOrders
为1
但 OrderCount
和Samples
显示为0
谢谢。
这是你想要的吗?
sum(case when gross >= 0.00 then 1 else 0 end) as TotalOrders,
sum(case when gross = 0.00 then 1 else 0 end) as OrderCount,
sum(case when gross > 0.00 then 1 else 0 end) as Samples
您可能需要> 0.00
,但随后TotalOrders
将与Samples
相同。
强制转换(COUNT(大约> 0.00时为CAS = THEN 1,否则为NULL END)作为样本
你建议的公式应该有效
with test as (select 1 as gross union all select -1 as gross union all select 2)
SELECT COUNT(CASE WHEN gross > 0.00 THEN gross ELSE null END) as 'Samples' from test
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.