sqlalchemyでDB中のテーブルのデータを検索したり数を数えたりする方法.
- RDBの使い方的に正しいか謎
- テーブルのカラムのデータが,別テーブルのデータのidのどれかと一致するか調べたかった
- filter()を使って,filter(tableA.tableB_id in tableB.id)みたいなことをやりたかったけどダメだった
- これとかこれを参考にした.
from sqlalchemy import create_engine from sqlalchemy.orm import sessionmaker engine = create_engine('') my_session = sessionmaker(bind=engine) session = my_session() # TableAの全データを取得 all_rows_of_TableA = session.query(TableA).all() # TableAの全データの数を取得 number_of_rows_of_TableA = session.query(TableA).count() # TableAの全データのIDを取得 list_of_all_rows_of_TableA = session.query(TableA.id).all() # TableAの全データのID(重複なし)を取得 unique_list_of_all_rows_of_TableA = session.query(TableA.id).distinct().all()