SQLAlchemyを使用して次のSQLクエリを実行するにはどうすればよいですか?SQLAlchemyを使用したSQLカウント(*)のフィルタリング
SELECT COUNT (*)
FROM det_factura
WHERE company = 31
AND date::text LIKE '2011-05% ';
SQLAlchemyを使用して次のSQLクエリを実行するにはどうすればよいですか?SQLAlchemyを使用したSQLカウント(*)のフィルタリング
SELECT COUNT (*)
FROM det_factura
WHERE company = 31
AND date::text LIKE '2011-05% ';
det_factura
もマップされたオブジェクトである場合、このクエリはそれを行う必要があります。
qry = (session.query(func.count(det_factura.id))
.filter(det_factura.company==31)
.filter(det_factura.date.like('2010-05%'))
)
それはtable
インスタンスである場合は、以下のいずれかが動作するはずです:
qry = select([func.count(det_factura.id)],
and_(det_factura.company==31,
det_factura.date.like('2010-05%')
)
)
ありがとうございます。 SQLSoup私はこのコードをsqlsoupに適用しているので、作業しています。 – leonciokof
hmm .. idフィールドを持っていないとどうなりますか?あなたは単に "count(*)"を得るだけで、おそらく選択リストの中に他のものがあると(sqlalchemy .count()を使うことはできません)? – shaunc
@shaunc:いつでも 'func.count( '*')'を実行して 'COUNT(*)' SQL式を得ることができます。 – van
は何SQLバックエンドを使用していますか? – van