这段代码一直有效,直到我介绍了case子句。所有我想要做的是制作一个值为1的新列是谓词> 0 else O.
SELECT p.cohort_name, DATEPART(Month, date)as mm, AVG(prediction)
CASE WHEN ((p.prediction) < 0 THEN 1 else 0 END) as Z
FROM
rates.rates_cohort_predictions p
Group by 1,2
order by p.cohort_name, DATEPART(Month, date)
答案 0 :(得分:0)
如mvp所述,您缺少一个select语句分隔符
这是正确的SQL语句
SELECT p.cohort_name,
DATEPART(Month, date) AS mm,
AVG(prediction),
CASE WHEN (
(p.prediction) < 0
THEN 1
ELSE 0
END) AS Z
FROM rates.rates_cohort_predictions AS p
GROUP BY 1,2
ORDER BY p.cohort_name, DATEPART(Month, date)