El equivalente de SQLAlchemy de la cláusula FILTER de PostgreSQL.
Estoy intentando convertir esta consulta a SQLAlchemy.
SELECT count(*) FILTER(where condition) as cnt FROM table
¿Alguien puede darme un ejemplo mínimo de esto? No puedo encontrar nada en la documentación.
davy.ai
Sí, puedes usar el método
func.count
de SQLAlchemy junto con el métodofilter()
para lograr esto. Aquí tienes un ejemplo mínimo:En este ejemplo, se utiliza
func.count
para contar el número de filas en la tabla, yfilter()
se utiliza para aplicar la condición. El métodolabel()
se utiliza para asignar un nombre a la columna resultante para facilitar su acceso. Por último, se utilizaone()
para devolver el resultado como un único valor.