問題タブ [lateral-join]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
336 参照

sql - 既存のラテラル結合を使用して postgres の関連行の数を取得する

このクエリは、を使用table1した関連レコードとともにからいくつかの行を取得します。table2 の行をそれぞれ 10 行に制限しました。table2left join lateral

しかし、count(*)table1 に関連する table2 のすべてのレコードの合計をどのように含めることができますか ( select count(*) from table2 where table1_id = t1.id)。横方向の結合を行っているため、これらの結果をどのように追加するかわかりません。

既に行っている横結合を再利用できますか、それとも最初の結合には制限がなく、別の横結合を行う必要がlimit 10ありますか? count(*)このように機能させるには、クエリはどのように見える必要がありますか? (最初の横結合から配列スライス構文を使用してそれを行う方法があると思いますが、それらの数を取得するためだけにすべての行を取得する必要があるため、費用がかかると思います。)