0

スレッドとメンバーの 2 つのテーブルがあります。

テーブル スレッド: id | 名前 | ...

テーブル メンバー: id | スレッド ID | 名前 | ...

スレッドは 2 つ以上のメンバーを持つことができます。メンバーは異なるスレッドに存在できます。メンバーが 2 つしかなく、このメンバーの 1 つが AAA という名前のスレッドを 1 つ取得します。

DB: Android の sqlite。

4

1 に答える 1

2

having句で集計を使用します。

select m.ThreadId
from members m
group by m.ThreadId
having count(*) = 2 and
       sum(case when m.name = 'AAA' then 1 else 0 end) = 1;
于 2013-05-24T18:50:51.520 に答える