我有一個查詢返回學生和他們的室友。這個想法是讓每個人都出現在第一欄,然後是第2欄和第3欄,讓每個室友都有。第3列可以是空白的,但第1列和第2列總會有結果。SQL試圖只選擇幾個返回的第一條記錄
我的查詢是返回正確的數據,除了當我有3人在房間裏,我會得到多個記錄。如下所述。
_roommate1 roommate2 roommate3 room1_
_roommate1 roommate3 roommate2 room1_
_roommate2 roommate1 roommate3 room1_
_roommate2 roommate3 roommate1 room1_
_roommate3 roommate1 roommate2 room1_
_roommate3 roommate2 roommate1 room1_
所有我想要做的就是保持每行的第一個實例後場出現在第1列
,所以我想輸出減少:
_roommate1 roommate2 roommate3 room1_
_roommate2 roommate1 roommate3 room1_
_roommate3 roommate1 roommate2 room1_
目的是向第1欄的每個人發送一封表格信,告訴他們室友的姓名。
由於我只能在一行上使用不同的字段,而不是在字段上使用,所以我處於暫時的損失狀態,因爲我可能會這樣做。我想能夠做的是說,如果它的工作是:
SELECT (DISTINCT Column1), column2, column3
所以我只會得到每個column1的第一個實例。有什麼建議麼?
可能的重複:http://stackoverflow.com/questions/251278/select-one-column-distinct-sql – Gian 2010-07-25 18:21:40
您能否包含您用於生成示例輸出的查詢? – 2010-07-26 13:52:54
你能否給我們一個精簡版的桌子,好嗎? – 2010-07-26 14:55:08