我需要在id字段上匹配2个数据集:
数据1:
id
---------
00123abc5
Run Code Online (Sandbox Code Playgroud)
数据2:
id
---
23a
Run Code Online (Sandbox Code Playgroud)
我需要inner join在id列上合并(SQL样式)这两个数据集,但不是data1.id = data2.id.我想要的是data1.id contains data2.id.
所以我想要id第一个数据集中的id字符串包含第二个数据集的字符串的所有行.
在SQL中,使用LIKE运算符:
SELECT d1.id
FROM data1 d1
INNER JOIN data2 d2 ON d1.id LIKE CONCAT('%', d2.id, '%')
Run Code Online (Sandbox Code Playgroud)
正如TheMouseMaster评论的那样,如果在同一个字段中发现了几个id,这种技术可能会生成重复的输出行.您可以DISTINCT用来消除重复:
SELECT DISTINCT d1.id
FROM data1 d1
INNER JOIN data2 d2 ON d1.id LIKE CONCAT('%', d2.id, '%')
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
74 次 |
| 最近记录: |