Ich habe eine SQL-Abfrage für Kreuztabelle, um die Anzahl von für jede eindeutige kategorische Kategorie für jeden bin-Bereich des fortlaufenden Attributs zu erhalten.SQL-Kreuztabellenabfrage für numerisches Attribut
ZB: Geschlecht (kategorisches Attribut männlich, weiblich) & Alter (fortlaufendes Attribut). Für Alter, Binning create as, 0-10, 10-20, 20-30, 30-40 ...
Also ich bin auf der Suche nach Abfrage, um mich für jeden Bereich auf kategoriale Attribut (Geschlecht) zurückzugeben.
Erwartete Ausgabe: für bestimmten Bereich: 0-10
CNT LABEL
365503 MALE
177939 FEMALE
Die folgende Abfrage arbeiten, aber für einen Bereich zu einer Zeit, so hat ich eine Schleife für jeden Bereich setzen,
WITH q0 AS
(SELECT GENDER label
FROM IMPORTDATAAJ
WHERE GENDER IS NOT NULL
GROUP BY GENDER
ORDER BY 1 ASC
) ,
q1 AS
(SELECT GENDER label
FROM IMPORTDATAAJ
WHERE AGE >= 0
AND AGE <= 1.0
),
q3 AS
(SELECT q0.label label,
COUNT(q1.label) cnt
FROM q0
LEFT OUTER JOIN q1
ON (q0.label=q1.label)
GROUP BY q0.label
ORDER BY label
)
SELECT q3.label,q3.cnt FROM q3
Aber ich möchte diese Schleife zu entfernen, um die Leistung zu erhöhen und alle auf einmal für alle Bereich erhalten möchten.
ich Orakel bin mit –