如何在SQL中有效使用多表联接查询?

时间:2019-05-09 04:34:47

标签: sql hbase phoenix

我在Apache Phoenix中有“问题”语句,在其中需要组合三个表以获得结果。 我对Hbase表有三个视图,模式如下

表组:-

pk |标题| ownerId |数据

表成员:-

pk | parentId |电邮|数据

表userinfo:-

pk |电邮|名|姓氏

现在,我想获取标题与输入字符串匹配的组(如果不匹配),然后想要获取其成员名称与输入字符串匹配的组。

我已经尝试过如下查询:-

select * from Group where pk like 'Prefix_%' 
and (TITLE like '%A%'
 or (OWNER_ID in
   (
      select parentId from MEMBERS where EMAIL in
      ( select distinct(EMAIL) from  USER_INFO
        where pk like 'PREFIX%' and 
        ( FIRST_NAME like '%A%' or LAST_NAME like '%A%')
      )
   )
) ) order by TITLE limit 5;

但是,花费太多时间也尝试了与类似但未给出预期结果的Left Join Query。 请建议我该如何改善?

0 个答案:

没有答案