2014-04-10 39 views
0

我有一個表,包含超過23,000條記錄。我想獲得獨特的BNO值。如何從列訪問獲取唯一值sql

我的表

BNO   EID  E Description  CSCII 
    678   7  power disc   011 
    544   6  ekac     067 
    678   8  disc mag    011 
    678   8  disc mag    011 
    599   2  push button   978 
    123   7  file dis    767 
    123   5  file sep    768 

要獲得獨特BNO的也retrive所有列,我如何在SQL查詢中指定。沒有BNO應該包含重複。

+2

...應該是什麼 - 例如 - BNO = 678的單行的EID? –

+1

如果沒有BNO包含重複,那麼爲什麼不只是'SELECT *'?否則,如果你想在列之間使用不同的值:'SELECT DISTINCT BNO,EID,[E Description],CSCII'。如果BNO包含重複項,請參閱上面的註釋......特定BNO的記錄顯示的次要標準是什麼? – Goose

+0

如果BNO = 123,您想爲其他列指定哪些值? EID應該是7還是5? CSII是767還是768?根據你的答案,我可以編寫SQL。 –

回答

1

如果你只是想BNO是唯一的,真的不在乎你從其他列想要的可能值只要它是BNO中的一個,就可以使用GROUP BY;

SELECT BNO, MAX(EID) EID, MAX(E_Description) E_Description, MAX(CSCII) CSCII 
FROM MyTable 
GROUP BY BNO 
+1

我很確定你不能在MS Access中使用現有的列名。 – Fionnuala

+2

@Remou你可以這樣寫:SELECT BNO,MAX(MyTable.EID)爲[EID],MAX(MyTable.E_Description)爲[E_Description],MAX(MyTable.CSCII)爲[CSCII] FROM MyTable GROUP BY BNO' – Brad

+0

@Brad好主意! – Fionnuala

0

SELECT DISTINCT(BNO)從MyTable的順序按BNO ....

+0

「我想獲得獨特的BNO的_並且也回顧所有的列_」 –

+0

剛剛發現.... hummmm – Mych

0
SELECT * FROM TABLE GROUP BY Column 
+0

「我想獲得獨特的BNO的_並且也回顧所有的列_」 –

+0

編輯我的回答 – Pantelis

+0

錯誤無法對選擇的字段進行分組* – vuyy1182