Unten Abfrage, wenn ich gibt mir ein Ergebnis ausführen, wie unten (SELECT
CASE
WENN prodName ENTHÄLT ('AAA') THEN 'AAA'
WENN prodName ENTHÄLT ('BBB') THEN 'BBB'
WENN prodName ENTHÄLT ('CCC') THEN 'CCC'
WENN prodName ENTHÄLT ('DDD') THEN 'DDD'
WENN prodName ENTHÄLT ('EEE') THEN 'EEE'
WENN prodName ENTHÄLT ('FFF') DANN 'FFF'
WENN prodName ENTHÄLT ('GGG') DANN 'GGG'
WHEN prodName ENTHÄLT ('HHH') THEN 'HHH'
ELSE 'Sonstige'
END AS
prod_name,
EXACT_COUNT_DISTINCT (Benutzer) AS Distinct_users
FROM [Mytable]
GROUP BY 1
ORDER BY 2 DESC
IGNORE CASE)
Sub wählen Sie in BigQuery mit Case-Anweisung
Unter Abfrage, die die gleiche wie oben ist, aber ich habe einen Subselect gegeben, um Datensätze auszulassen, wenn PROD_NAME = aaa ein anderes Ergebnis zurückgibt, wo es verschiedene Benutzer mit Wert 1 zu anderen aggregiert und diff Ergebnis zeigt.
SELECT prod_name, EXACT_COUNT_DISTINCT (Benutzer) AS Distinct_users
VON
(SELECT
CASE
WENN prodName ENTHÄLT ('AAA') THEN 'AAA'
WENN prodName ENTHÄLT ('BBB') THEN ‚BBB '
WHEN prodName ENTHÄLT (' CCC ') THEN 'CCC'
WHEN prodName ENTHÄLT (' DDD ') THEN 'DDD'
WHEN prodName ENTHÄLT (' EEE ') THEN 'EEE'
WHEN prodName ENTHÄLT (' FFF ') DANN 'FFF'
WENN prodName ENTHÄLT ('GGG') THEN 'GGG'
WENN prodName ENTHÄLT ('HHH') THEN 'HHH'
ELSE 'Sonstige'
END AS
prod_name,
EXACT_COUNT_DISTINCT (user AS Distinct_users)
FROM [Mytable]
GROUP BY 1
ORDER BY 2 DESC
IGNORE CASE)
Bitte lassen Sie mich wissen, wie Sie das Problem lösen können. Ich brauche die zweite Abfrage, um die gleiche Ausgabe wie die erste zu liefern, aber ich brauche nicht PROD_NAME = 'AAA'.Ich habe als case-Anweisung enthalten, da meine Tabelle mehrere Daten wie ‚aaa‘, ‚AAA‘, ‚aaa-in‘, ‚Aaa‘ usw. enthält, und ich bin Gruppierung alles zusammen den Gesamtwert