2014-02-09 121 views
0

我在數據庫中有兩個表,如:

table_one,其中包含以下字段:class,day_of_week和id(pk);
table_two與像字段:ID(FK),科目
如何從mysql中的兩個表中獲取值與從一個表不同和從其他表多個值?

和我的嘗試是:

選擇不同DAY_OF_WEEK,從table_one如tbl_one,table_two如tbl_two受試者其中tbl_one.id = tbl_two.id和CLASS_NAME = '一'[?];

和我的結果出來像我的報告:本週
日:**科目
週日一個
週日乙
週一
週一乙

但它應該是這樣的:
星期幾科目
週日一個

週一

+0

向我們顯示您在表格中的數據。請格式化代碼。 –

+0

@ Thrash Bean先生,我有點編輯和格式化我的問題,我是新的,所以我的東西會更新鮮的水平,但我會感謝您的幫助,在我的問題,我想要什麼解決方案是,有兩個表如上所述並通過PK ID鏈接,我想通過參考ID從兩個表中獲得價值,但對於單週的單日將有幾個主題進行研究,因此一週中的一天不應該複製,謝謝 – hawkeye

+0

如果我理解正確,你想要幾天的一週,並希望他們每個人與多個主題相關聯。你必須爲此使用Java代碼。 SQL不能神奇地做到這一點。 –

回答

0

先生?哇謝謝你。

我不確定我對你的假裝很瞭解,但是我看到你的結果是正確的。您編輯的代碼是不可能的,因爲你可以得到

Sunday, A, B 
Monday, A, B 

但不

Sunday, A 
     , B 

你需要的是agregate功能。 InMySQL這是GROUP_CONCAT。在你的情況下,查詢可能看起來像這樣:

SELECT day_of_week, GROUP_CONCAT(subjects) AS subjects 
FROM ... 
WHERE ... 
GROUP_BY subjects 

也看看User defined functions

我希望我明白你的問題,這個答案可以幫助你。如果不是,請糾正我並再次詢問。

+0

謝謝@Thrash Bean,明白了 – hawkeye

相關問題