0

新しいアイテムしか持っていないユーザーのリストを取得するにはどうすればよいですか?

このクエリを試しました。. . SELECT * FROM items where status = 'new' GROUP BY item_owner; しかし、マイクも新しい車を持っているため、出力に表示されますが、新しい車だけを持っているユーザーのみが必要です。

Table 1
------------------------------------------------------------
Table: User_Profiles
Id            username
1              mike
2              jim


Table 2
------------------------------------------------------------
Table: Items
Id            item       status    item_owner       
1              car          new       mike
2              car          old       mike
3              car          new       jim
4              car          new       jim

このクエリを試しました。. . SELECT * FROM items where status = 'new' GROUP BY item_owner; しかし、mike show mik は出力に含まれているため、彼は新しい車も持っていますが、新しい車だけを持つユーザーのみが必要です。

4

2 に答える 2

0

ここに改訂されたSQLフィドルがありますhttp://sqlfiddle.com/#!2/038e7/4

重要なのは、「新規」以外のステータスを持つすべての所有者を除外することです

SELECT DISTINCT i.item_owner 
FROM items i
where not exists (select 1
                  from items i2 
                  where i2.item_owner = i.item_owner 
                  and i2.status <> 'new')
于 2013-08-02T17:09:18.263 に答える