Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 如何使用可选子句左键联接表_Mysql - Fatal编程技术网

Mysql 如何使用可选子句左键联接表

Mysql 如何使用可选子句左键联接表,mysql,Mysql,我有这个查询,我想找到每个订购的产品及其位置 SELECT op.orders_id, op.products_id, op.products_quantity, op.products_name, psl.shelf_code FROM orders_products AS op LEFT JOIN orders_products_attributes AS opa ON op.orders_products_id = opa.orders

我有这个查询,我想找到每个订购的产品及其位置

SELECT op.orders_id, op.products_id, op.products_quantity, op.products_name, psl.shelf_code
          FROM orders_products AS op
     LEFT JOIN orders_products_attributes AS opa
            ON op.orders_products_id = opa.orders_products_id
     LEFT JOIN products_stock_location AS psl
            ON op.products_id = psl.products_id
           AND opa.products_options_values_id = psl.option_id
         WHERE op.orders_id IN ('" . implode("', '", $oIDs) . "')  
问题是,有时产品没有属性,所以它们在orders\u products\u属性中没有条目,在这种情况下,我的第一个左连接不返回任何内容,这不是问题,但我的AND子句使第二个连接不返回任何内容


如果不相关,有没有办法使and子句成为可选的

当然这很容易,我在寻找一些巫毒的东西,一定是新年;)。非常感谢。当然那很容易,我在找一些巫毒的东西,一定是新年;)。谢谢。
and (opa.products_options_values_id is null
     or opa.products_options_values_id = psl.option_id)