[解決済み] SQLAlchemy: 日付フィールドをフィルタリングする方法は?
2022-07-03 09:18:27
質問
以下はモデルです。
class User(Base):
...
birthday = Column(Date, index=True) #in database it's like '1987-01-17'
...
2つの日付の間でフィルタリングを行いたいのですが、例えば、18-30歳の区間にいるすべてのユーザーを選びたいのですが、どうすればよいでしょうか?
SQLAlchemyでどのように実装すればよいでしょうか?
を考えています。
query = DBSession.query(User).filter(
and_(User.birthday >= '1988-01-17', User.birthday <= '1985-01-17')
)
# means age >= 24 and age <= 27
これが正しくないことは分かっていますが、どうすれば正すことができるのでしょうか?
どのように解決するのですか?
実際、あなたのクエリはタイプミスを除けば正しいです。あなたのフィルタはすべてのレコードを除外しています。
<=
を
>=
であり、その逆も同様です。
qry = DBSession.query(User).filter(
and_(User.birthday <= '1988-01-17', User.birthday >= '1985-01-17'))
# or same:
qry = DBSession.query(User).filter(User.birthday <= '1988-01-17').\
filter(User.birthday >= '1985-01-17')
また
between
:
qry = DBSession.query(User).filter(User.birthday.between('1985-01-17', '1988-01-17'))
関連
-
[解決済み] プログラムの実行やシステムコマンドの呼び出しはどのように行うのですか?
-
[解決済み] リストのリストからフラットなリストを作るには?
-
[解決済み] SQL ServerでSELECTからUPDATEする方法とは?
-
[解決済み] リストが空かどうかを確認するにはどうすればよいですか?
-
[解決済み] SQL Server の DateTime データ型から日付だけを返す方法
-
[解決済み】ネストされたディレクトリを安全に作成するには?
-
[解決済み】2つの辞書を1つの式でマージする(辞書の和をとる)には?)
-
[解決済み] 2つの線分が交差しているかどうかを確認するにはどうすればよいですか?
-
[解決済み] Djangoで2つの日付の間を選択する
-
[解決済み] タプルの代わりにリストで出力するZip
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] PythonでのAWS Lambdaのインポートモジュールエラー
-
[解決済み] Spyderを仮想環境で動作させるには?
-
[解決済み] 複数のプロットを1つのPDFファイルに保存する
-
[解決済み] Celeryでタスクのステータスを確認するには?
-
[解決済み] リストスライスの割り当てはどのように行われるのですか?
-
[解決済み] Pythonでファイルがバイナリ(非テキスト)かどうかを検出するにはどうしたらいいですか?
-
[解決済み] readonlyプロパティをmockでモックするには?
-
[解決済み] 2ウェイ/リバースマップ[重複]について
-
[解決済み] Pythonで文字列のb-プレフィックスを取り除くには?
-
[解決済み] リストの各要素に数値を乗じるには?