1

这是查询:

    SELECT CONCAT(imp_us_storefront.model,'/',imp_us_storefront.chassis) AS rec_desc, 1 AS flag,asc_model.model_id AS model,asc_chassis.chassis_id AS chassis
    FROM imp_us_storefront 
      JOIN asc_model ON (asc_model.rec_desc = imp_us_storefront.model)
      JOIN asc_chassis ON (asc_chassis.rec_desc = imp_us_storefront.chassis)
      JOIN attr_notebook ON (asc_model.model_id != attr_notebook.model_id AND asc_chassis.chassis_id != attr_notebook.chassis_id)
    WHERE imp_us_storefront.mri_category = '11946'
    GROUP BY rec_desc ASC;

对于此特定类别“11946”,所有机箱 ID 都具有相同的值,因此结果集为空。如果我消除约束

    asc_chassis_chassis_id != attr_notebook.chassis_id

然后我得到了我需要的结果,但这不适用于其他类别。所以我的问题是我如何转换这条线

    JOIN attr_notebook ON (asc_model.model_id != attr_notebook.model_id AND asc_chassis.chassis_id != attr_notebook.chassis_id)

只消除 model_id 和 chassis_id 的特定组合,这样如果我有以下值

model_id 底盘 ID

2 6

3 6

我可以消除 2,6 但不能消除 3,6

或者

model_id 底盘 ID

4 2

4 3

我可以消除 4,2 但不能消除 4,3?

提前致谢。

4

0 回答 0