2016-11-06 51 views
0

如何匹配參考號碼從左到右匹配參考號碼使用從左到右和Len在SQL

使用SQL Server 2008

table1的

參考量

ABC123456 

table2

參考2

EFABC123456 
ACDERERERE 
ABC12345693843 

我們想比較給定2的形式給定1從左到右

預期行爲

表2

Reference2 

EFABC123456 - Not match 
ACDERERERE - Not match 
ABC12345693843 - Match (its matching the complete reference from left to right with reference1) 

如何進行查詢的邏輯

試圖查詢

Left(@pi_ref, Len(table1.refno)) = table1.refno then RTRIM(LTRIM(table1.refno)) 

此查詢工作了完整的參考號不從左至右

請協助

+0

寫你一個答案,但你應該知道,性能是O(n^2)。你能告訴我關於數據的其他事情嗎? –

回答

1
table2.refno like table1.refno + '%' 
+0

查詢不會從左到右 – Gopal

+0

@Gopal - '選擇'ABCDE'如'ABC'+'%'then 1 else 0時的情況,'ABCDE'如'BCD'+'%'則選擇1否則0結束,'ABCDE'像'CDE'+'%'那麼1則其他0結束的情況' ' –