环境:SQL Server 2017
这是一个有效的T-SQL查询:
SELECT replace(email, '.', '') as EMAIL
FROM usermaster
WHERE email = 'abc.def@gmail.com'
执行时,此查询会按预期返回abcdef@gmail.com
。
根据我的需要,我在比较电子邮件时必须忽略点。这是我想要的查询:
SELECT email
FROM usermaster
WHERE replace(email, '.', '') = 'abcdef@gmail.com'
但是,此查询不会返回任何记录。从前面的查询可以明显看出,我应该将abc.def@gmail.com
作为输出。我错过了什么?问候。
答案 0 :(得分:4)
您确定在第一次查询时收到.COM吗?
SELECT email
FROM usermaster
WHERE replace(email, '.', '') = 'abcdef@gmailcom' -- notice no .com