Я пытаюсь запустить приведенный ниже код, но получаю ошибку Not a Group by Expression
.Я провел некоторое исследование и обнаружил, что мне нужно добавить «Группировать по», что я и сделал, но я не уверен, что делаю неправильно?
Конечный результат Я ищу список medicaid_no
и 1
в test_flag
, если они имеют число more > 0
и In_Op
равно inpatient
.
Если вы видите ниже строки 1,2, и 4 соответствуют критериям count > 0
и имеют Inpatient
, в то время как другие не соответствуют, то они получают 0
.
Row MEDICAID_NO TEST_FLAG
1 999999 1
2 1111111 1
3 3333333 0
4 444444 1
5 88888888 0
Вот мой код
SELECT medicaid_no, count(*)
,(CASE WHEN count(*)>0 and In_Op IN('Inpatient')
THEN 1 ELSE 0 END) AS test_FLAG
FROM top_member_claims
GROUP BY medicaid_no