2016-11-22 67 views
0

我有2台首先是使用加入2分表用不同的名称内加入

以前

lotname  
--------  
R16A   
R17A   
R17B   
R18A   
R18B   

第二是

lotname  
--------   
R16AA  
R17A   
R17B   
R18AAA  
R18B   

我想加入双方Ë表让一切都符合像R16AR16AA

匹配,如果我写这样的代码

select * from before 
join after 
    on before.lotname = after.lotname 

O/P

lotname  lotname  
R17A  R17A   
R17B  R17B   
R18B  R18B   

我想O/P像

Lotname  Lotname  
----------------------------     
R16A  R16AA  
R17A  R17A   
R17B  R17B   
R18A  R18AAA  
R18B  R18B   

回答

5
SELECT * 
FROM before 
INNER JOIN after 
    ON after.lotname LIKE before.lotname + '%' 
+1

蒂姆其惊人的非常感谢你。 –

0
SELECT * FROM before JOIN after ON before.Lotname = LEFT(after.Lotname,4) 
+1

虽然此代码片段可能会解决问题,但[包括解释](// meta.stackexchange.com/questions/114762/explaining-entirely-code-based-answers)确实有助于提高帖子的质量。请记住,您将来会为读者回答问题,而这些人可能不知道您的代码建议的原因。也请尽量不要用解释性注释来挤占代码,这会降低代码和解释的可读性! – kayess

0
SELECT * FROM before 
INNER JOIN after 
ON after.lotname LIKE CONCAT(before.lotname,'%')