Verwenden Sie "StartWith" bei der Verknüpfung von Tabellen

Ich versuche, 2 Tabellen in meiner database zu verknüpfen. Ich habe mich gefragt, ob es einen path gibt, um die Tische wie folgt zu verknüpfen:

SELECT T0.ItemCode FROM dbo.Items AS T0 LEFT JOIN dbo.Decoder AS T1 ON T0.ItemCode STARTSWITH T1.Prefix 

Ich weiß, wie man LIKE in der WHERE statement verwendet, aber ich brauche es in der JOIN Seite der Abfrage. Ich kann LEFT nicht verwenden, da das Präfix Länge nicht fix ist und entweder 2,3 oder 4 sein kann

Wie kann ich das in der FROM statement verwenden?

Bitte versuchen Sie es mit PATINDEX :

 Select T0.ItemCode From dbo.Items AS T0 Left Join dbo.Decoder AS T1 ON PATINDEX(T1.Prefix + '%', T0.ItemCode) <> 0 

Hier finden Sie auf MSDN weitere Informationen zur Verwendung dieser function.