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 都会在优化之前重写查询,解析子查询是重写过程的一部分。
我在 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 都会在优化之前重写查询,解析子查询是重写过程的一部分。