0

結果の文字数でSqlAlchemy列をフィルタリングするにはどうすればよいですか?

これが私が見ている一種の実装です。

クエリ = query.filter(Take_Last_7_Characters(column_1) == '0321334')

「Take_Last_7_Characters」は、column_1 の結果の値から最後の 7 文字をフェッチします。

では、 Take_Last_7_Characters(column_1) を実装するにはどうすればよいですか??

4

2 に答える 2

1

を使用sqlalchemy.sql.expression.funcして、SQL 関数を生成します。

詳細を確認する

于 2012-11-28T10:27:07.160 に答える
0

func@tuxudayの指示に従って、を使用してSQL関数を生成してください。
コードはRDBMSに依存していることに注意してください。以下のコードはSQLite、を提供しSUBSTRLENGTH機能するために実行されます。実際のデータベースでは、それらの名前が異なる場合があります(LEN, SUSBSTRING, LEFT, RIGHTなど)。

qry = session.query(Test)
qry = qry.filter(func.SUBST(Test.column_1, func.LENGTH(Test.column_1) - 6, 7) == '0321334')
于 2012-11-29T09:13:16.673 に答える