我必须在三个表中使用 mysql 执行查询。
interface
---------------------
|id   |    name     |
---------------------
|1    |    inter1   | 
---------------------
|2    |    inter2   |
---------------------
inetrapp
--------------------------------------
|id   |    interid     |   appid     |
--------------------------------------
|1    |     1          |    20       |
--------------------------------------
|2    |     1          |    21       |
--------------------------------------
|3    |     2          |    22       |
--------------------------------------
|4    |     2          |    23       |
--------------------------------------
app
--------------------------------------
id    |   appid        |  appname    |
--------------------------------------
1     |     20         |    sap      |
--------------------------------------
2     |     21         |    sap1     |
--------------------------------------
3     |      22        |    wes      |
--------------------------------------
4     |      23        |    wes1     |
--------------------------------------
查询是这样的
 select  ti.id as id,  
    ti.name as name,
    GROUP_CONCAT(DISTINCT tapp.appname order by ti.id SEPARATOR ",") as applications
    from  interface ti inner join interapp tiap on ti.id = tiap.interid inner join app   as   tapp on tiap.appid = tapp.appid where tapp.appname in ("sap1");
这给了我以下结果
--------------------------------------
|id   |    name     |   applications |
--------------------------------------
|1    |    inter1   |     sap1       |
--------------------------------------
但我需要所有与 inter1 有关系的应用程序,(即)我希望得到以下结果。
--------------------------------------
|id   |    name     |   applications |
--------------------------------------
|1    |    inter1   |     sap,sap1   |
--------------------------------------
请指导我修改我的上述查询。先感谢您。