2013-07-18 94 views
0

我有兩個MySQL表中的字段我需要匹配...在產品表中我有混合字母/數字鍵(product_code),如MM123,然後在一個集合表我剛纔的字母鍵(collection_code)如系MM ...mysql匹配字母/數字字段與字母字段無重複

我想這:

select p.* 
from product p, collection c 
where p.product_code LIKE CONCAT(c.collection_code ,'%') 

但是我得到的多個條目匹配,因爲collection_code有條目,M和MM所以它返回產品代碼= M123和產品代碼= MM123

我想我要的是這樣的:

select p.* 
from product p, collection c 
where p.product_code LIKE CONCAT(c.collection_code ,REGEXP '[^0-9 \.]+') 

,但我不能似乎得到它到底

回答

0
SELECT p.* 
FROM product p 
JOIN collection c 
ON p.product_code REGEXP CONCAT('^', c.collection_code, '[0-9]+$') 
+0

這似乎工作,謝謝! –