这是我拥有的,但它不起作用。它尝试根据大小加入,如果不...如果它等于 '*'
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
)
最佳答案
要加入完全匹配的列或替代字符串,您可以使用类似
的模式(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)
)
关于mysql - 如果什么都找不到,我该如何加入其他事件? MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21617641/