quiero hacer el equivalente deSelección nulo en SQLAlchemy
SELECT * FROM
(SELECT foo, bar FROM baz JOIN quux ON baz.id = quux.id
UNION
SELECT foo, NULL AS bar FROM baz)
GROUP BY (foo, bar) HAVING foo = 'John Doe';
usando sqlalchemy 0.6, pero me parece que no puede colarse en que NULL
allí.
Esto más o menos lo que tengo hasta ahora:
q1 = session.query(Baz.foo, Quux.bar).join(Quux)
q2 = session.query(Baz.foo, None)
# ^^^^ This breaks!
Parece que estás intentando hacer el equivalente de una unión externa. Tal vez hay una manera de hacerlo en MySQL. – Omnifarious
Es muy similar a una combinación externa. el problema es que no quiero filas de quux con bar = NULL; quux no tiene tales filas. Quiero agregar filas adicionales en la unión con esa columna nula. – SingleNegationElimination
Además, no puse un punto demasiado fino, ya que mi pregunta es realmente sobre sqlalchemy, pero la base de datos que estoy consultando es en realidad Firebird. La consulta SQL suministrada devuelve los resultados deseados, simplemente no he descubierto cómo expresar eso en sqlalchemy. – SingleNegationElimination