0

我更新了旧系统,但遇到了查询问题。

要开展业务,这是直接的问题:

有一些新记录与其他记录的 id 相关联。也有没有的旧记录。

  • Case1:有一个 INT id,当它存在时,查询必须在包含之后使用 AND。
  • 案例 2:当 INT id 的值为 0 时,它什么都不做

这是查询的一部分,我需要在其中创建变量 AND 语句:

LEFT JOIN table v ON v.producten_id = i.producten_id AND v.t5_id = i.t5_id AND i.id = v.inkoop_id

我从未在查询中使用过 IF 雄蕊,但我正在寻找这样的东西:

LEFT JOIN table v ON v.producten_id = i.producten_id AND v.t5_id = i.t5_id if(v.inkoop_id > 0){AND i.id = v.inkoop_id}
4

2 回答 2

1

尝试这个:

LEFT JOIN table v
  ON v.producten_id = i.producten_id
    AND v.t5_id = i.t5_id
    AND (v.inkoop_id <= 0 OR i.id = v.inkoop_id)
于 2013-02-20T11:05:35.263 回答
1

这个怎么样....

LEFT JOIN table v ON v.producten_id = i.producten_id
   AND v.t5_id = i.t5_id
   AND ((v.inkoop_id > 0 AND i.id = v.inkoop_id) OR (v.inkoop_id = 0))
于 2013-02-20T11:05:58.477 回答