我有兩個表,我需要以特定的方式進行組合。我需要在一個表中顯示一次信息,但我需要下一個表中的信息來返回它所有的匹配數據。這裏是我的榜樣問題與複雜的Sql加入查詢
用戶
| id | name |
-------------
| 1 | mike |
| 2 | john |
| 3 | bill |
-------------
類
-----------------
| uid | subject |
-----------------
| 1 | math |
| 1 | English |
| 2 | math |
| 3 | math |
| 3 | English |
-----------------
預期結果
--------------------
|name | mike |
---------------------
|subject| math |
| | English |
---------------------
或
--------------------
|name | subject |
---------------------
|mike | math |
| | English |
---------------------
這是我當前的查詢
SELECT user.name, class.subject
FROM user
join class on class.uid = user.id
WHERE (user.name like '%mike%')
回報
--------------------
|name | subject |
---------------------
|mike | math |
|mike | English |
---------------------
,但我想刪除所有名稱重複。任何人都可以與此查詢
。這不是加入期望的標準結果。 –
IMO你會濫用數據庫在那裏做這項工作。您應該按'name'命令並在您的應用程序代碼中進行分組。 –
SQL實際上並不如此。如果你想在應用程序輸出中分組,那麼應該在那裏完成演示。它可以通過很多_horrifying string manipulation_來完成,但是在應用程序層中更適合。 –