我有两张包含以下数据的表格(以及其他数据)。
表1
Value 1
'003232339639
'00264644106272
0026461226291#
我需要使用第1列作为标识符匹配下表中的第二列
表2
Value 1 Value 2
00264 1
0026485 2
0026481 3
00322889 4
00323283 5
00323288 6
所以我需要的结果如下:
结果
Table 1, Value 1 Table 2, Value 2
'003232339639......4
'00264644106272....1
0026461226291#.....1
任何帮助都将受到赞赏 - 非常困在这里并且在excel中手动完成。
我希望这种格式有意义 - 我第一次使用这个论坛。
答案 0 :(得分:0)
Melany,这个问题有点令人困惑(写得不正确)也许就是没有人回应的原因。我将尝试解释如何完成类似的选择
从TABLE1中选择数据匹配列(COL1)存在于两个表中
SELECT * FROM TABLE1
INNER JOIN TABLE2
ON TABLE1.COL1 = TABLE2.COL1
AND TABLE1.COL1 = 'XYZ'
使用相同的副本
SELECT * FROM TABLE1
WHERE COL1 IN(SELECT COL1 FROM TABLE2
WHERE COL1 = 'XYZ')
答案 1 :(得分:0)
在SQL中,一个或多个字符的通配符为%
,并与关键字LIKE
一起使用。
所以我建议如下(如果您的目的是真正匹配Table1
中Value1
开始的行,就像Table2.Value1
中的值一样:
SELECT Table1.Value1, Table2.Value2 WHERE Table1.Value1 LIKE CONCAT(Table2.Value1, '%');
编辑:对于某些DBMS(例如SQLite),将CONCAT(x, y)
替换为x || y
。