【问题标题】:Count multiple columns and total in a new column在新列中计算多列和总计
【发布时间】:2019-07-05 12:40:58
【问题描述】:

我希望在一个名为“car_total”的新列中计算多个列中的数值

我尝试了一个选择案例 stmt 但没有成功

结果应该是这样的:

|car_id | merc | toyota |  fiat | car_total
+-------+------+--------+-------+----------
|123567 |    1 |      0 |     0|         1
|567888 |    0 |      1 |     1 |         2

【问题讨论】:

  • 您尝试过的“选择案例”是什么,究竟有什么问题?
  • 添加示例数据、预期输出以及您尝试解决的问题,但作为文本而不是图像。还用您正在使用的 DBMS 标记您的问题。
  • 提示:merc + toyota + fiat.
  • 你的问题不清楚,你说要计算数值但0也是一个值?您的意思是添加 值或计数符合某些条件(例如不为零或不为空)的值吗?

标签: sql


【解决方案1】:
SELECT car_id, 
   merc, 
   toyota, 
   fiat, 
   Sum(merc + toyota + fiat) AS car_total 
FROM   table_name 

SELECT car_id, SUM(mers+toyota +fiat ) AS car_total FROM Cars Group By Id

【讨论】:

  • 通过选择总和,car_total 为 1386。选择已将汽车总数中的 merc、toyota、fiat 相加,但我需要按 car_id 分解的 car_total
  • 不幸的是,我无法将结果发布为具有真实列名的 sql azure
  • 你试过这个SELECT Id, SUM(merc+toyota +fiat ) AS car_total FROM Cars Group By Id
【解决方案2】:

您可以使用下面的 sql 查询来获取新列中的总数

SELECT 
   car_id,
   merc,
   toyota,
   fiat,
   (merc + toyota + fiat) as car_total
FROM table_name;

【讨论】:

  • 抱歉,我要的是 COUNT 而不是 SUM。以下不会导致错误,但结果是错误的。 SELECT car_id, merc, fiat, COUNT (merc + fiat) AS car_total FROM t1;
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-01-02
  • 2021-07-31
  • 2013-03-21
相关资源
最近更新 更多