[英]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
每個值,在計算列COORD
有多少記錄具有“ZERADA”的值以及有多少記錄具有“COORDENADA”的值。
這可以通過一個簡單的多列GROUP BY
和現有查詢的COUNT
聚合“on-top”來計算:
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
如果需要,可以將查詢重寫為不使用公用表表達式 (WITH CLAUSE) 或子查詢,但對於 SAP HANA,這不太可能產生更好的性能。 HANA 無論如何都會在優化之前重寫查詢,並且解析子查詢是重寫過程的一部分。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.