SAP HANA SQL |计算同一列中的不同预测值

SAP HANA SQL | Count different projected values in the same column

我在 SAP HANA 中有以下查询。我投影了一列,以数百万行显示 02 结果。我想数一数这两个结果中每个 DISTINCT ZCGNOTAL 有多少。

请帮帮我。

SELECT ZCGINSTAL, 
       ZCGNOTAL, 
       "Latitude",
       CASE WHEN "Latitude" > '0' THEN 'ZERADA' ELSE 'COORDENADA' END AS COORD
FROM "CLB162585"."062021MOM"

据我了解,OP 想知道,对于 ZCGNOTAL 的每个值,计算列中有多少条记录的值为“ZERADA”,有多少条记录的值为“COORDENADA” COORD.

这可以通过一个简单的多列 GROUP BY 和一个 COUNT 聚合“在现有查询之上”来计算:

WITH base_data as (
   SELECT   ZCGINSTAL
          , ZCGNOTAL 
          , "Latitude"
          , CASE 
              WHEN "Latitude" > '0' THEN 'ZERADA' 
              ELSE 'COORDENADA' 
            END AS     COORD
FROM 
     "CLB162585"."062021MOM")
SELECT
     ZCGNOTAL
   , COORD
   , COUNT(*) as COORD_CNT 
FROM 
   base_data
GROUP BY
     ZCGNOTAL
   , COORD

如果需要,可以重写查询以不使用常见的table 表达式(WITH CLAUSE)或子查询,但对于 SAP HANA,这不太可能产生更好的性能。无论如何,HANA 都会在优化之前重写查询,解析子查询是重写过程的一部分。