如果二进制文件不同,sql会找到类似的文本值吗?

kdfy810k  于 2021-08-09  发布在  Java
关注(0)|答案(2)|浏览(159)

我试图从两个表中比较/找到相似的电子邮件地址。我在smtp服务器中使用了错误的电子邮件日志。使用我在网上找到的实用程序页面从crud的其余部分提取的实际电子邮件地址。它们被粘贴到记事本中,然后导入我的sql server BadEmail2 使用ssms导入向导的表。
使用查询时 INNER JOIN 不返回任何记录(以下查询)
当使用select查询时,通过从 BadEmail2 表中返回正确记录的查询位置。
通过使用cast Varbinary 我发现两个表中相同电子邮件地址的二进制值在所有情况下都是完全不同的。
这有关系吗。。。是因为这个原因吗 INNER JOIN 查询不返回任何记录?如果是这样,我该怎么做?
下面的查询不返回任何记录——尽管是一个简单的select查询,其电子邮件地址是从 BadEmails2 确实有效。

SELECT EmailAddress from Customers INNER JOIN BadEmails2
ON customers.EmailAddress = BadEmails2.BadEmailAdr

qry1型

qry2型

3htmauhk

3htmauhk1#

发现问题的人!原来我可能是在从服务器导入错误的电子邮件地址时出错了 .txt 文件。没有使用“平面文件”作为源。
感谢大家把我引向正确的方向-我学到了很多。

c86crjj0

c86crjj02#

尝试在连接的两侧比较数据库的默认值。这样可以确保两边的编码相同。
https://docs.microsoft.com/en-us/sql/t-sql/statements/collations?view=sql-server-ver15

相关问题