如果找不到任何内容,我如何加入其他内容? MySQL的

时间:2014-02-07 01:28:24

标签: mysql join

这是我拥有的,但它不起作用。它尝试加入大小,如果不是......如果它等于'*'

则加入
INNER JOIN tbl_items ON (
  tbl_items.size = COALESCE(tbl_model.size,'*')
  AND tbl_items.type = COALESCE(tbl_model.type,'*')
  AND tbl_items.category = COALESCE(tbl_model.category,'*')
  AND tbl_items.service = tbl_testTypes.name
)

1 个答案:

答案 0 :(得分:0)

要加入精确列匹配或替代字符串,您可以使用类似

的模式
(tbl_items.size = tbl_model.size) OR (tbl_model.size = '*')

如果匹配,则执行OR的左侧,否则使用右侧。将每个内容分组到()

充实整个JOIN

INNER JOIN tbl_items ON (
  ((tbl_items.size = tbl_model.size) OR tbl_model.size = '*')
  AND ((tbl_items.type = tbl_model.type) OR tbl_model.type = '*')
  AND ((tbl_items.category = tbl_model.category) OR tbl_model.category = '*')
  AND (tbl_items.service = tbl_testTypes.name)
)