sql >> データベース >  >> RDS >> PostgreSQL

Postgresqlパーティションとsqlalchemy

    MeasureMixin 両方のクラスが継承できます。次に、を使用します。 event テーブルパーティションを接続します。

    from sqlalchemy import event
    
    class MeasureMixin:
        city_id = Column(Integer, not_null=True)
        log_date = Column(Date, not_null=True)
        peaktemp = Column(Integer)
        unitsales = Column(Integer)
    
    class Measure(MeasureMixin, Base):
        __tablename__ = 'measures'
        __table_args__ = {
            postgresql_partition_by: 'RANGE (log_date)'
        }
    
    class Measure2020(MeasureMixin, Base):
        __tablename__ = 'measures2020'
    
    Measure2020.__table__.add_is_dependent_on(Measure.__table__)
    
    event.listen(
        Measure2020.__table__,
        "after_create",
        DDL("""ALTER TABLE measures ATTACH PARTITION measures2020
    VALUES FROM ('2020-01-01') TO ('2021-01-01');""")
    )
    


    1. スタックオーバーフローのように、顧客がWebサイトでopenidを使用できるようにするにはどうすればよいですか?

    2. mysql内の行を削除し、フォルダーから関連付けます

    3. 同じサーバー上の2つのLaravelアプリケーションが互いに競合しています

    4. 存在しない場合にデータを挿入するための複雑なphpmysqliクエリ:重複する列名'?'を取得します