可能重複:
Can MySQL Nested Select return list of results與MySQL值的迴歸陣列選擇
我有含有users
(ID,姓名)一個表,另一個含有courseAttrs
用戶已經施加到(用戶ID,courseID)。我想要選擇所有用戶,並讓此選擇返回用戶已應用的名稱和用逗號分隔的courseID列表。什麼是可能的解決方案?
可能重複:
Can MySQL Nested Select return list of results與MySQL值的迴歸陣列選擇
我有含有users
(ID,姓名)一個表,另一個含有courseAttrs
用戶已經施加到(用戶ID,courseID)。我想要選擇所有用戶,並讓此選擇返回用戶已應用的名稱和用逗號分隔的courseID列表。什麼是可能的解決方案?
你應該檢查mysql的手冊,所以,據你介紹你應該創建兩個表的查詢...你可以使用mysql的程序來獲得結果..你可以隨時使用foreach閱讀所有的值,如果你想要一個特定類型的數組,你可以創建它同時循環運行通過你的對象/數組返回的mysql
我想如果你創建一個數組(像我想你想創建)與表單(name,courseid,courseid,courseid)u可能會弄亂所有數據,並可能爲每個用戶創建一個數組。我認爲最好的辦法是接收從查詢中獲得的對象或數組。
的查詢,假設你有一個關聯字段,你可以做這樣的事情
SELECT * FROM用戶,courseAttrs其中user.courseattr = courseattr.id_couse_attr
如果使用mysql_fetch_object
while ($row = mysql_fetch_object($result)) {
echo $row->user_id;
echo $row->fullname;
}
mysql_fetch_assoc()返回關聯數組:
while ($row = mysql_fetch_assoc($result)) {
echo $row["userid"];
echo $row["fullname"];
}
mysql_fetch_array()返回數組
while ($row = mysql_fetch_array($result)) {
echo $row[0];
echo $row[1] ;
}
[你嘗試過什麼?](http://www.whathaveyoutried.com) – Kermit
我想選擇所有的課程哪裏會返回所有的用戶和他們的課程。例如:如果我有2個用戶,第一個用戶有2個'courseAttr'條目,第二個用戶有4個,那麼查詢將返回6行,每行都有不同的courseID,但不能用逗號分隔。我可以用PHP處理這個問題,但我認爲通過MYSQL有一個更簡單的解決方案。我有'JOIN ON'的感覺可以幫助,但我不知道'JOIN'命令是如何工作的。 – JNK
我發現了一個類似的問題,我可以得到我想要的結果。 http://stackoverflow.com/questions/2524848/can-mysql-nested-select-return-list-of-results – JNK