少し助けが必要です。次のクエリがあり、それを sqlalchemy.orm で表現する方法に興味があります。現在、session.executeで実行しています。それは私にとって重要ではありませんが、ただ興味があります。私が実際に知らないことは、結合を行わずに FROM 句 (ネストされたビュー) にサブクエリを配置する方法です。
select g_o.group_ from (
select distinct regexp_split_to_table(g.group_name, E',') group_
from (
select array_to_string(groups, ',') group_name
from company
where status='active'
and array_to_string(groups, ',') like :term
limit :limit
) g
) g_o
where g_o.group_ like :term
order by 1
limit :limit
速度の問題のために、このサブクエリが必要です-最も内側のクエリ関数regexp_split_to_tableに制限なしで、すべてのデータの解析を開始し、その後にのみ制限を行います。しかし、私のテーブルは巨大で、その余裕はありません。
不明な点があれば、お尋ねください。最善を尽くします)