如何使用ONE Query通过2个表选择数据

时间:2017-10-23 12:14:28

标签: mysql

每个client都有自己的project,但并非所有project都有clients

我想选择 项目的所有SELECT `clients` FROM `reps` WHERE `clients` != '' ,但我不知道该怎么做!

我使用此查询获得所有客户端:

project

我的目标是获取 reps

的数据

这些是我的数据库表:

表格客户端(表名= 1 id varchar(12) // example: stckvrflw 2 ctitle varchar(100) // example: StackOverflow

verkocht

表项目:(表名= 1 id varchar(11) // example: 1 2 title varchar(100) // example: This is an Example

    List<Organization> list=new ArrayList<>(mcached.values());

    if(mcached!=null && !mCacheIsDirty){

        //return your map as list
        return Observable.just(list);

    }else {
        mcached=new LinkedHashMap<>();
    }
}

你对我的问题有解决方案吗?

2 个答案:

答案 0 :(得分:0)

client表格中有milestones,所以这不符合您的要求吗?

SELECT DISTINCT m.client
FROM `milestones` m;

答案 1 :(得分:0)

您必须加入projectsmilestones表。由于您未提供有关数据库shema的信息,因此必须调整字段名称。如果您有以下内容,还必须检查已删除或隐藏的标志:

SELECT c.* FROM clients c
INNER JOIN projects p ON p.client = c.id
INNER JOIN milestones m ON m.project = p.id
GROUP BY c.id