我正在尝试使用另一列中的值搜索表中的varchar2列以匹配字符串。被搜索的列允许自由格式文本,并允许不同长度的单词和数字。我想找到一个不是更大的文本和数字字符串的字符串。
示例:1234a应匹配“发票#1234a”但不匹配“发票#1234a567”
采取的步骤: 我已经尝试过Regexp_Like(table2.Searched_Field,table1.Invoice),但当发票号码有一个可以在其他发票号中找到的号码序列时,会收到很多错误点击。
答案 0 :(得分:1)
建议:
仅在结束时匹配:
REGEXP_LIKE(table2.Searched_Field, table1.Invoice || '$')
完全匹配:
table2.Searched_Field = 'Invoice #' || table1.Invoice
仅在结束时与LIKE匹配:
table2.Searched_Field LIKE '%' || table1.Invoice