2015-11-20 44 views
0

喜有兩個表命名角色和工作respectivly jobs table structure組CONCAT,並在第

Roles table structure

,並在當運行下面的查詢

SELECT job_id ,GROUP_CONCAT(roles_title) from jobs left join roles on roles_id in (roles) group by job_id 

Result i got

預期結果

<table> 
 
    <tr> 
 
    <td>Job_id</td> 
 
    <td>Roles</td> 
 
    </tr> 
 
    <tr> 
 
    <td>1</td> 
 
    <td>Admin,acc & test</td> 
 
    </tr> 
 
    <tr> 
 
    <td>2</td> 
 
    <td>acc& test</td> 
 
    </tr> 
 
</table>

+0

這裏的答案是規範化數據,而如果你有很多行,它的回答可能會比蝸牛慢。 – Mihai

回答

0

您可以使用加入條款FIND_IN_SET()

SELECT job_id ,GROUP_CONCAT(roles_title SEPARATOR '&') 
    from jobs 
     left join roles on FIND_IN_SET(roles_id,roles) 
GROUP BY job_id 

希望這會有所幫助。

+0

我只得到單行 –

+0

哦,對不起,我忘了羣..請立即檢查 –