0
jsonbフィールドにつぶやきを含むデータベーステーブルがあります。 私が最もリツイート順ツイートを取得するクエリを持っている、これは次のようにそれが見えるものです:私は今のところ得たところ、私はSQLAlchemyので、このクエリを作成しようとしているSQLAlchemyサブクエリフィールドから選択サブクエリフィールドから
SELECT * FROM (
SELECT DISTINCT ON (raw->'retweeted_status'->'id_str')
raw->'retweeted_status' as status,
raw->'retweeted_status'->'retweet_count' as cnt
FROM tweet
WHERE (raw->'retweeted_status') is not null
ORDER BY raw->'retweeted_status'->'id_str', cnt DESC
) t
ORDER BY cnt DESC
、これは次のようになります。
session.query(Tweet.raw['retweeted_status'],
Tweet.raw['retweeted_status']['retweet_count'].label('cnt'))\
.filter(~Tweet.raw.has_key('retweeted_status'))\
.distinct(Tweet.raw['retweeted_status']['id_str']).order_by(Tweet.raw['retweeted_status']['id_str'].desc()).subquery()
しかし、それをcntで注文するにはどうすればいいですか?