2017-03-09 44 views
0

我需要幫助:(我有表像這樣...MySQL的:一個聲明在一個表中

ID|code|item|user| 
01|aaaa|1111|0001| 
02|bbbb|1111|0001| 
03|cccc|1111|0001| 
04|dddd|1111|0001| 
05|aaaa|1111|0002| 
06|eeee|1111|0002| 
07|ffff|1111|0001| 

我的用戶在0002和我知道我的項目NUMER(例如1111)我。不知道其他用戶,id和其他代碼,但我只能得到02,03,04,07的結果(對於這個例子)。用戶002的任何sinle和重複行(代碼列)都應該被忽略。 。?如果你知道我的意思是任何想法如何:(

+0

這一點很難解密您的信息來完成,但是這是你正在尋找的模式:'用戶<>:given_user和項目=:given_item和代碼< > * *任何代碼,其中:given_user具有:given_item *? – pozs

+1

解釋你的邏輯。向我們展示樣本數據和預期產出。 \t請閱讀[**如何提問**](http://stackoverflow.com/help/how-to-ask) \t \t這裏是一個偉大的地方[** START **] (http://spaghettidba.com/2015/04/24/how-to-post-at-sql-question-on-a-public-forum/)來了解如何提高您的問題質量並獲得更好的答案。 –

+0

這已被標記爲'mysql'和'postgresql',這是兩個不同的DB系統。哪一個是合適的? – jmelesky

回答

1

這可以用一個子查詢過濾

select * 
    from myTable 
    where code not in (
     select code 
      from myTable 
      where user = '0002' 
    ) 
+0

這就是它!謝謝 ;-) – Lukasz

0

嘗試用:

select ID 
from myTable 
where user <> '0002' 
group by ID, code 
having count(code) = 1 
+0

此查詢顯示1,2,3,4和7行。但是應該顯示第1行,因爲「代碼」列與第5行重複。這就是問題...... – Lukasz

+0

(...)但是第1行不應顯示,因爲「代碼」列與第5行重複。 ...) – Lukasz

+0

用不同的更新...嘗試閱讀一些教程,而不是發佈問題 – NikNik