1
我在使用sqlalchemy時遇到了一些問題。我創建像查詢:sqlalchemy:控制從查詢中選擇的列
db.session.query(Case.court_id).filter(
Case.last_updated.between(start, end)).filter(
(Case.last_scraped_by != "RSS") |
(Case.last_scraped_by.is_(None))).order_by(Case.last_updated.desc()).distinct()
這將導致以下SQL:唯一不同的從數據庫Case.court_id
的,但由於Query.order_by
改變
SELECT DISTINCT `case`.court_id AS case_court_id, `case`.last_updated AS
case_last_updated FROM `case` WHERE `case`.last_updated BETWEEN %s AND %s
AND (`case`.last_scraped_by != %s OR `case`.last_scraped_by IS NULL) ORDER BY `case`.last_updated DESC
這裏的問題是我想列列表我得到不正確的結果,我已經搜索了sqlalchemy的文檔,但到目前爲止沒有找到明確控制所選列的方法。所以我的問題是,明確控制所選列的最佳方式是什麼?
令人驚訝的是,這使得sqlalchemy停止將'Case.last_updated'列添加到select語句。這將工作的時刻,謝謝 –
很高興它的工作,但我相信一些RDMBSs可能會抱怨。 – van