CakePHP在子查询中不存在的地方

问题描述

我有这样的查询

    SELECT
        disTINCT min(a.id) as min_id
    FROM table_a as a
    JOIN table_b as b on b.table_a_id = a.id
    JOIN table_c as c on b.id = c.table_b_id
    WHERE c.id = '123'
    AND a.delete_flg = 0
    AND b.delete_flg = 0
    AND c.delete_flg = 0
    AND d.delete_flg = 0
    AND NOT EXISTS
    (
        SELECT 1 FROM table_d AS d
        WHERE d.table_a_id = a.id
        AND d.name is not null
    )

如何使用cakePHP添加查询

这是我当前的sql构建器代码

    $query = $this->tableA->findAllByDeleteFlg(0)
     ->distinct()
     ->select([
        'min_id'    => 'min(tableA.id)'
     ])
     ->join([
        'table' => 'table_b','alias' => 'tableB','type'  => 'INNER','conditions' => 'tableB.table_a_id = tableA.id'
     ])
     ->join([
        'table' => 'table_c','alias' => 'tableC','conditions' => 'tableC.table_b_id = tableB.id'
     ])
     ->where([
        'tableC.id' => '123','tableA.delete_flg' => 0,'tableB.delete_flg' => 0,'tableC.delete_flg' => 0
     ]);

我很困惑如何添加NOT EXISTS子查询sql代码。请帮忙。谢谢!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)