2012-10-02 25 views
1
沒有計數或GROUP返回唯一值

我的數據庫類有我難住了這個問題。如果有人可以幫助我,將是巨大的如何只在MySQL

我有了2列的表。第1列是蘇打類型(可樂,百事可樂,佩珀博士等),第2列是人的名字。人們可以喝多種蘇打水。

某些條目可能是

  1. 可樂傑里米
  2. 健怡可樂山姆
  3. 博士辣椒傑里米

我必須寫一個返回的人,只有喝一類型的查詢蘇打。所以傑里米不會被退回,但山姆會。問題是我不能使用COUNT或GROUP(或任何聚合函數)!如果沒有這些,我會怎麼做?

謝謝!

+0

你有沒有看着都成'EXISTS'(更重要'不存在')? – Jodaka

+0

爲什麼你不能使用聚合函數?由於某種原因它們是可用的,我認爲這是最簡單的方法。 – Barranka

+1

@Barranka這是一個任務,這就是任務的一部分 –

回答

0

像這樣的工作,如果子查詢都OK:

select distinct * from sodas as s1 where s1.name not in (select s2.name from sodas as s2 where s2.name=s1.name and s2.soda <> s1.soda) 
2

你可以嘗試這樣的事:

select a.soda, a.person 
    from table a 
where not exists(select 1 
        from table b 
        where b.person = a.person 
        and b.soda <> a.soda)