簡體   English   中英

如何將一列(在一個表中)的 substring 與另一列(在另一個表中)的完整值連接起來

[英]How to join a substring of a column (in one table) with the full value of another column (in another table)

所以我目前有一個包含以下列和條目的表:

ROW_ID        CODE           VAL
  1            US             50
  2            CAN            15
  3            MEX            12

我還有另一列包含以下列和條目:

ROW_ID       CODE_METADATA         REGION
  1           US|451223123           8
  2          CAN|123123123           7
  3          MEX|41028               3

我怎樣才能在 CODE 和 CODE_METADATA 列上連接兩個表?(分別)。 我嘗試了以下但沒有用:

select t2.nvl(substr(code_metadata, 0, instr(code_metadata, '|')-1), code_metadata) as CODE
 from table1 t1
 join table2 t2 on t1.code = t2.CODE;

提前致謝!

您可以加入條件:

substr(t2.CODE_METADATA,1,instr(t2.CODE_METADATA,'|')-1) = t1.CODE

您也可以使用LIKE加入:

t2.CODE_METADATA LIKE t1.CODE || '|%'

試試這個:substr(t2.CODE_METADATA,1,length(t1.CODE)) = t1.CODE

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM