我有两列要比较:第一列是以 (555) 555-5555 的格式出现的住宅号码,第二列是以 5555555555.00 的格式出现的。我想比较第三列中每个数字的前 6 位,如果前 6 位匹配,则显示 TRUE,如果不匹配,则显示 false。我已经完成了查询,但是将列转换为相同的格式让我很生气。对此有什么帮助吗?
问问题
155 次
1 回答
1
在 MySql 中,一个快速的解决方案是这样的:
SELECT
col1,
col2,
CASE WHEN
LEFT(
REPLACE(REPLACE(REPLACE(REPLACE(col1, '(', ''), ')', ''), '-', ''), ' ', ''),
6) = LEFT(col2,6)
THEN 'True'
ELSE 'False'
END Matches
FROM yourtable
请看这个小提琴。
于 2013-02-15T22:12:11.383 回答