期待どおりに機能する次のコマンドがあります。
DBSession.query(Users).filter(or_(Users.first_name.contains(search_term),Users.last_name.contains(search_term))).all()
Usersテーブルで名前と名前の両方を検索するので、またはのbob smith
いずれかを検索して検索bob
できますが、検索してもsmith
結果が得られませんbob smith
。これは明らかに、bobがfirst_name列にあり、bob smith
失敗しないためです。しかし、sqlalchemy内でこの種の検索を行う方法はありますか?
最悪の場合、フルネームで列を作成できることはわかっていますが、可能であれば念のために質問したいと思いました。また、raw sqlで可能である場合に備えて、これをsqlとしてタグ付けしています。その後、rawクエリに基づいてsqlalchemyバージョンを把握しようとします。