回答

收藏

如何通过部分匹配来联接两个表

技术问答 技术问答 235 人阅读 | 0 人回复 | 2023-09-12

我有两个表,其中包含以下数据:
, m0 d+ O( Z# g, S2 ^TableA.name
8 K  ?% a$ B' X9 {2 _9 ER4.23-Core-2
& q) z1 g6 e8 K2 w1 [R4.23-Core-2
& W8 I: `# M! S+ X! J+ RLA#213 CGHPBXsw01 127.213 0024-737e-e341- S7 p) t, X, k
LA#252 CGHRack1sw01 127.252 0022-57ab-d7815 Y+ E% ^: K, E, k* ]4 M
SOC-01A-SW01
3 A& _( {2 s2 T  D! s- u/ ?to - R4-DISTR-9512
; L$ }6 @* n! Q# Mto-R2-DISTR-5900-1
* y1 C; Y# F* `9 {0 `to-R3.25-EDGE
# O+ P, A3 m* q) H+ |. _# ?6 D, V* ^TableB.caption
5 `9 N  |/ W1 w) a- K+ NR4.23-Core-2.ehd.ca% U, X7 N) y& r+ g% \5 C$ g+ |/ z
R4.23-Core-2.nhd.ca
& c( D# W: R$ W9 [6 ECGHPBXsw012 L2 M- i2 R6 L2 P$ U0 K
CGHRack1sw01) j% I7 p  g" `
SOC-01A-SW01
  @  P% n  P8 V2 w& bR4-DISTR-9512& D/ s3 J6 d! ]9 `5 b4 B
R2-DISTR-5900-1.phsnc.
$ `5 ?* I( l* V: u  H8 ?& L1 jR3.25-EDGE.phsne.edjc.ca
% \/ U1 V* ^/ N( l* y& K我试过使用以下join语句,但它似乎不适用于带有的任何行。在里面。
% S& x, u- O' O) e& i6 Odbo.TableA.Name 2 o& h8 Y; _, `( ]7 D# r% \
INNER JOIN dbo.TableB.Caption
+ M! ~- z, p* t' {/ [  ON dbo.TableA.Name LIKE '%' + dbo.TableB.Caption + '%'
( B$ N+ x7 a3 T2 ]# H( d) ^% i我也尝试使用替换功能,该功能可以正常工作,但替换中包含太多变体。4 C! _" J9 \  @' o, @; B! l
我可以尝试使用RIGHT或LEFT函数对数据进行规范化,但是对于没有’。’的行。它会抛出一个错误。而且我不知道如何跳过没有“。”的行。
( F. K* E4 U- z2 g连接这两个表的最有效方法是什么?+ d6 s/ c3 b$ R; \" d
               
: M5 v/ o1 T9 T" d* k5 N4 Q解决方案:
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则