如何使用SQL确定两个不同表中邮政编码的前几个字符?
所以我遇到了一个小问题。我似乎无法解决这个问题,想知道是否能得到一些帮助 我有两张表,都包含与邮政编码相关的信息 表A包含完整的邮政编码,表B包含该地区的前缀 例如,表A包含邮政编码NE628HJ,表b包含NE62。如何查询以选择所有相似的 我试过这个:如何使用SQL确定两个不同表中邮政编码的前几个字符?,sql,sql-server,Sql,Sql Server,所以我遇到了一个小问题。我似乎无法解决这个问题,想知道是否能得到一些帮助 我有两张表,都包含与邮政编码相关的信息 表A包含完整的邮政编码,表B包含该地区的前缀 例如,表A包含邮政编码NE628HJ,表b包含NE62。如何查询以选择所有相似的 我试过这个: SELECT * from tableB left join tableA on tableA.postcode LIKE tableB.postcode 但这不起作用 有什么建议吗?您可以在中使用通配符,如: SELECT *
SELECT * from tableB
left join tableA
on tableA.postcode LIKE tableB.postcode
但这不起作用
有什么建议吗?您可以在
中使用通配符,如:
SELECT *
from tableB left join
tableA
on tableA.postcode LIKE tableB.postcode + '%';
性能不会特别好,因为这不会利用索引。您可以使用
SELECT * from tableB
left join tableA
on left(tableA.postcode,2) = left(tableB.postcode,2)
匹配2字符前缀的步骤