0

次のデータベーススキーマがあります

class posts(Base):
    __tablename__ = 'xposts'
    id = Column(Integer, primary_key=True) 



class Comments(Base):  
    __tablename__ = 'comments'
    id = Column(Integer, primary_key=True) 
    comment_parent_id=Column(Integer,unique=True)  
    #comment_id fetches comment of a comment ie the comment_parent_id
    comment_id=Column(Integer,default=None)
    comment_text=Column(String(200))

データベースの値は

1   12  NULL    Hello First comment
2   NULL    12  First Sub comment

sqlalchemy を使用して投稿のすべてのコメントとサブコメントを取得したいのですが、これまでのところ

qry=session.query(Comments).filter(Comments.comment_parent_id!=None)
print qry.count()

同じテーブル(コメント)でouterjoinを試したクエリでコメントのすべてのサブコメントを取得できる方法はありますか?

4

1 に答える 1

1

sqlalchemy クエリで all() 関数を使用した後、count と len を使用してデータベース内の合計行を検索できます。このクエリは 2 番目のリスト結果を提供するためです。

qry=session.query(Comments).filter(Comments.comment_parent_id!=None).all()

len(qry)
于 2012-10-06T09:33:58.753 に答える