我有两个mysql表中的字段我需要匹配...在产品表中我有混合字母/数字键(product_code),如MM123,然后在集合表中我只有字母作为键(collection_code )比如MM ......
我试过这个:
select p.*
from product p, collection c
where p.product_code LIKE CONCAT(c.collection_code ,'%')
但是我得到了多个匹配的条目因为collection_code有M和MM这样的条目所以它返回product_code = M123和product_code = MM123
我认为我想要的是这样的:
select p.*
from product p, collection c
where p.product_code LIKE CONCAT(c.collection_code ,REGEXP '[^0-9 \.]+')
但我似乎无法完全明白
答案 0 :(得分:0)
SELECT p.*
FROM product p
JOIN collection c
ON p.product_code REGEXP CONCAT('^', c.collection_code, '[0-9]+$')