我有两个表A和B.表A有列ID,名称和值.在表B的其他列中,有一个名为IssueID的列.A.Value的值类似于'ForSymbol12345',而B.IssueID的值类似'12345'.我能够在相应表中的某些ID列上连接这两个表.但是,我只想选择B.IssueID存在于A.Value值中的那些行.换句话说,B.IssueID是A.Value的子字符串.
可以在SQL中完成吗?我尝试使用CONTAINS(字符串,'值搜索')但显然第二个参数必须是字符串,不能是列名.我尝试过
CONTAINS(A.Value, B.IssueID)
Run Code Online (Sandbox Code Playgroud)
但它给出了一个错误,说第二个参数应该是String,TEXT_LEX或Variable(一个简化的例子显示如下)

有人可以帮我解决这个问题吗?
使用LIKE带有的运算符JOIN.
SELECT A.*, B.*
FROM A
INNER JOIN B
ON A.Value LIKE CONCAT('%', B.IssueID, '%')
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2819 次 |
| 最近记录: |