Data

SQLAlchemy. CASE WHEN 구문 with Label

Tigris 2023. 9. 2. 16:20
from sqlalchemy import case


session.query(
	...,
	case(
		(Table.column == "조건1", "값1"),
		(Table.column == "조건2", "값2"),
		else_="예외값",
	).label("새로운_칼럼명")
).filter(
	...
)

만약 Equality 조건만 있다면 case.value를 사용하여 구문을 단순화할 수 있다.

from sqlalchemy import case


session.query(
	...,
	case(
		{"조건1": "값1", "조건2": "값2"},
		value=Table.column,
		else_="예외값",
	).label("새로운_칼럼명")
).filter(
	...
)

잘못된 내용, 오타, 부정확한 문장 등 어떤 피드백이든 환영합니다. 감사합니다.