为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:8
【操作系统】:centos7
【CPU】:
【问题描述】*:select * from t_tenant_user a left join t_tenant_user_relation rel on rel.F_SRC_TYPE is null where a.F_TENANT_ID=384030259808768 and a.f_deleted = 0 and a.F_STATUS=0;
执行结果和mysql出来的不一致,达梦是从t_tenant_user 取出所有和t_tenant_user_relation第一条进行join,然后和t_tenant_user_relation第二条join,
mysql结果是从t_tenant_user取出第一条,然后和t_tenant_user_relation所有条数join,然后取出t_tenant_user第二条,和t_tenant_user_relation所有条数进行join,
就会导致达梦和mysql出来的数据不一致
可以提供一下表定义和测试数据,对比一下
复现了一下你所说的查询
是如你Mysql走的法返回结果集的
如果你的执行计划是像我这样,结果集应该是没问题的。
否则是你的执行计划的问题,表连接顺序
执行结果对比
可以比较一下oracle,这个sql看样子应该可以优化为inner join