【问题标题】:How to compare two tables in SQL if 2 columns have the same data - Codeigniter?如果 2 列具有相同的数据 - Codeigniter,如何比较 SQL 中的两个表?
【发布时间】:2019-12-28 11:00:54
【问题描述】:

如果使用 SQL 查询具有相同数据,如何比较两个不同表中的两列?我正在研究 Codeigniter 框架。 表一名为:ci_admin,列名为:admin_id。 表二叫:active_ingredient,列名是user_id。

我正在使用 datatable_json 函数来查看表中的所有数据。

当我使用下面的代码时,它显示了数据库中的所有数据,我需要显示 admin_id = user_id 的数据

模型中的这段代码:

        $wh =array();
        $SQL ='SELECT * FROM active_ingredient';
        $wh[] = "SELECT 1
        FROM   ci_admin
        WHERE  ci_admin.admin_id = active_ingredient.user_id";

        if(count($wh)>0)
        {               $WHERE = implode(' and ',$wh);
            return $this->datatable->LoadJson($SQL,$WHERE);
        }
        else
        {
            return $this->datatable->LoadJson($SQL);
        }

【问题讨论】:

    标签: sql codeigniter datatable


    【解决方案1】:

    您需要使用 JOINS 从具有比较列的多个表中获取数据

    $SQL = 'SELECT active_ingredient.*,ci_admin.* FROM active_ingredient 
    LEFT JOIN ci_admin on (active_ingredient.user_id = ci_admin.admin_id)';
    

    然后返回你上面的 SQL 查询

    return $this->datatable->LoadJson($SQL);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-08
      • 2015-05-07
      • 1970-01-01
      • 2016-08-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多