2017-08-12 66 views
0

表名client我有一個二維表格,我怎樣才能把這些數據如下?

id name  mail 
1 semsi pasa [email protected] 
2 demir ali [email protected] 

表名registerid

fields clientid values 
4  1  94858 
5  1  3493848484 
4  2  32423 
5  2  4324242342 

foreach($user as $key => $val){ 
    echo "one row:".$user[$key]['name']." ".$user[$key]['mail']." ".$user[$key]['values']."<br>"; 
} 

它看起來像在屏幕上

semsi pasa [email protected] 948583493848484 
demir ali [email protected] 324234324242342 
+0

需要在您的SQL中使用簡單的「JOIN」來組合表格。 – Canis

回答

3

餘噸hink您正在尋找聚集:

select c.name, c.mail, group_concat(r.values order by fields separator '') 
from client c join 
    registerid r 
    on c.id = r.clientid 
group by c.id; 

注意:如果你決定要值之間的分離,然後用的東西,除了''

+0

我想要字段值5和4來提出這些。 – SemsiPasa

0

,因爲你需要得到字段的值也

因此增加對以上回答「田」,你得到這個飽受質疑,在我所採取的方式

select c.name, c.mail, r.fields, group_concat(r.values order by fields separator '') 
from client c join 
    registerid r 
    on c.id = r.clientid 
group by c.id; 
0
SELECT GROUP_CONCAT(tt.value order by tt.fieldid = 4 separator '') FROM tc JOIN tt ON tc.id = tt.relid where tt.fieldid IN ('4','5') group by tc.id 

感謝。

相關問題