2013-03-28 77 views
0

我被要求用雙重否定在sql中進行查詢。本身是要求所有的 「sigla」 和 「disciplina」 裏的semestre_id爲21和具有至少1屬性 「resposta」= 5雙重否定sql查詢

http://i.imgur.com/8CDoFHZ.png

查詢 http://i.imgur.com/5aueUKS.png

現在的問題儘管發佈了所有這些我的問題主要是我不太確定這是否是在sql中做適當的雙重否定的方式,因爲我得到的答案是表中錯誤的所有行。既然我很難在網上搜索例子,任何人都可以澄清我?

+0

你想要_其中semestre_id是21_,但你選擇的是semestre_id不是21 – Justin

+0

我以爲我是第一次選擇那些已經resposta 5然後選擇semestre 21沒有resposta 5,然後選擇那些不是'沒有resposta 5 – user697110

+0

你的問題陳述和條件。您的評論表達了獨家OR。你確定你的英文翻譯? – Sebas

回答

1
select disc.disciplina_id, disc.sigla 
from ipdw_disciplina disc 
     inner join ipdw_respostas resp 
      on disc.disciplina_id = resp.disciplina_id 
where resp.semestre_id = 21 
     and resp.resposta = 5 
group by disc.disciplina_id, disc.sigla 

我儘量避免/不在任何可能的情況下。沒有它們的情況下追蹤查詢的意圖似乎更容易。這看起來像一個非常直接的查詢,不需要雙重否定。

+0

是沒有雙重否定它會更容易,但問題明確說我必須用雙重否定。 – user697110