在MySQL 中取得關聯列的不同結果
在MySQL 中,如果您需要從特定欄位(例如FirstName)檢索唯一值)同時確保保留其他欄位中的對應值(例如ID 和LastName),不能簡單地使用DISTINCT關鍵字。
例如,考慮下表:
ID 名字姓氏<br>1 John Doe<br>2 Bugs Bunny<br>3 John Johnson<br>
如果您想檢索不同的FirstName 值,您可能會想像這樣使用DISTINCT:
SELECT DISTINCT FirstName FROM table;
但是,此方法只傳回 FirstName 資料列,且不提供對應的 ID 和 LastName 值。
要獲得所需的結果,您可以利用GROUP BY 子句如下:
SELECT ID, FirstName, LastName FROM table GROUP BY FirstName;
在此查詢中,FirstName 被指定為分組列。因此,對於每個不同的 FirstName 值僅傳回一行。此外,查詢從每個 FirstName 的第一次出現中擷取對應的 ID 和 LastName 值。
使用此方法,結果集將顯示如下:
ID FirstName LastName <br>1 John Doe<br>2 個蟲子Bunny<br>
此解決方案可確保您獲得唯一的FirstName 值,同時保持與正確ID 和LastName 的關聯。
以上是如何在 MySQL 中檢索具有關聯列的 DISTINCT 值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!