使用SQLAlchemy获取表中的行数。

15 浏览
0 Comments

使用SQLAlchemy获取表中的行数。

我在Python中使用SQLAlchemy,想知道如何获取一个列中的总行数。我已经定义了变量:

engine = sqlalchemy.create_engine(url, ehco=False)
Session = sqlalchemy.orm.sessionmaker(bind=engine)
Session = session()
metadata = sqlalchemy.MetaData(engine)
Base = declarative_base(metadata=metadata)
# 代表shape_congress_districts_2012表的类
class Congress(Base):
    __tablename__ = 'shape_congress_districts_2012'
    id = geoalchemy.Column(sqlalchemy.Integer, primary_key=True)
    name = geoalchemy.Column(sqlalchemy.Unicode)
    geom = geoalchemy.GeometryColumn(geoalchemy.Polygon(2))
    geom_simple = geoalchemy.GeometryColumn(geoalchemy.Polygon(2))
    area = geoalchemy.Column(sqlalchemy.Float)
    state_id = geoalchemy.Column(sqlalchemy.Integer)
    census_year = geoalchemy.Column(sqlalchemy.Date)
geoalchemy.GeometryDDL(Congress.__table__)

我想在不必等待数据库查询很长时间的情况下确定表中的总行数。目前,我有一段代码:

rows = session.query(Congress).all()

然后我可以从列表中访问它们,但这要求我一次性将所有内容加载到内存中。

0