我正在研究一個需要龐大數據庫的項目。目前我們正在使用SQLAlchemy,但我關心性能問題。我的問題是,有如下查詢:SQL鍊金術表現
session.query(DataStorage).filter(DataStorage.storage_path.startswith(path)).all()
SQLAlchemy如何做實際的翻譯和篩選。它是否通過SELECT子句從DataStorage獲得所有條目,然後檢查其中的每個條目?或者它知道如何將「過濾器(DataStorage.storage_path.startswith(path))」轉換爲SQL?在使用原生SQL查詢方面性能方面損失多少?
問候, 波格丹
您還可以打開SQLAlchemy中的日誌記錄以查看生成的SQL。 – codeape 2011-05-12 12:27:37