【问题标题】:Pull result only for missing data仅针对缺失数据提取结果
【发布时间】:2019-02-13 09:59:54
【问题描述】:

我有一个表格,用于显示来自 DB 的结果,然后您可以将其中的一些数据添加到 DB 中。如何仅检查/显示仍未添加到数据库中的数据?

我在 atm 中提取结果的方式

$query = $this->db->query("SELECT oc_ekstri_frontend.*,
                                  oc_ekstri_image.id as img_id,
                                  oc_ekstri_image.name
                                  FROM oc_ekstri_image
LEFT JOIN oc_ekstri_frontend ON (oc_ekstri_frontend.id = oc_ekstri_image.frontend_id)
LEFT JOIN oc_ekstri_frontend_view ON (oc_ekstri_frontend_view.ekstri_id = oc_ekstri_image.id)
                                  WHERE oc_ekstri_frontend.subcat_id = '" . $id . "'");

您可以将其中一些数据添加到 oc_ekstri_frontend_view 中。 怎么弄成这样的代码?

AND WHERE oc_ekstri_image.id NOT EXIT IN oc_ekstri_frontend_view.ekstri_id

【问题讨论】:

    标签: mysql sql join select


    【解决方案1】:

    当您使用 LEFT JOIN

    oc_ekstri_frontend_view.ekstri_id = oc_ekstri_image.id
    

    作为您的JOIN 条件,如果oc_ekstri_image.id 的值在oc_ekstri_frontend_view 中不存在,则oc_ekstri_frontend_view.ekstri_id 的值将是NULL。所以你可以添加:

    AND oc_ekstri_frontend_view.ekstri_id IS NULL 
    

    到您的WHERE 条件以查找这些行,即

    $query = $this->db->query("SELECT oc_ekstri_frontend.*,
                                      oc_ekstri_image.id as img_id,
                                      oc_ekstri_image.name
                                      FROM oc_ekstri_image
    LEFT JOIN oc_ekstri_frontend ON (oc_ekstri_frontend.id = oc_ekstri_image.frontend_id)
    LEFT JOIN oc_ekstri_frontend_view ON (oc_ekstri_frontend_view.ekstri_id = oc_ekstri_image.id)
                                      WHERE oc_ekstri_frontend.subcat_id = '" . $id . "'
                                        AND oc_ekstri_frontend_view.ekstri_id IS NULL");
    

    【讨论】:

    • 我面临另一个问题,实际上我需要匹配来自 oc_ekstri_frontend_view.product_id = $product_id 的 product_id 我试图添加另一个 AND oc_ekstri_frontend_view.product_id = '" . $product_id . "' 但在哪里工作是我的错吗?
    • @bobibobi 你应该问另一个问题 - 如果你能在其中给出整个查询会更容易。
    猜你喜欢
    • 2018-08-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-04
    • 1970-01-01
    • 2021-12-01
    相关资源
    最近更新 更多