0
我有2代表這樣MySql的選擇查詢
Table 1
Id f1 f2
1 ABC red,green
2 DEF blue,yellow
Table 2
id color value
1 red r
2 green g
3 blue b
4 yellow y
我怎樣才能得到這樣的提前
我有2代表這樣MySql的選擇查詢
Table 1
Id f1 f2
1 ABC red,green
2 DEF blue,yellow
Table 2
id color value
1 red r
2 green g
3 blue b
4 yellow y
我怎樣才能得到這樣的提前
f1 f2 values
ABC red,green r,g
DEF blue,yellow b,y
感謝:
SELECT t1.f1,
t1.f2,
GROUP_CONCAT(t2.value) AS values
FROM TABLE_1 t1
JOIN TABLE_2 t2 ON FIND_IN_SET(t2.color, t1.f2)
GROUP BY t1.f1, t1.f2
你可以調整s CHEMA?我認爲如果你有一個ABC對應顏色的映射表,它將會受益。
EG:
mapping_table
------------
id table1_id table2_id
1 1 1
2 1 2
這樣,你可以很容易地做一個JOIN。
[FIND_IN_SET documentation](http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_find-in-set) – 2010-09-22 03:45:56
親愛的!它的部分權利。我試圖執行你的查詢,但它不返回任何結果集。你執行過這個嗎? – Novice 2010-09-22 04:13:43
它的工作原理。謝謝 – Novice 2010-09-22 04:22:49