Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 我有Excel表格中的电子邮件列表。从包含来自Excel文件的相同电子邮件的数据库中搜索记录的最简单方法是什么?_Sql_Sql Server_Sql Server 2017 - Fatal编程技术网

Sql 我有Excel表格中的电子邮件列表。从包含来自Excel文件的相同电子邮件的数据库中搜索记录的最简单方法是什么?

Sql 我有Excel表格中的电子邮件列表。从包含来自Excel文件的相同电子邮件的数据库中搜索记录的最简单方法是什么?,sql,sql-server,sql-server-2017,Sql,Sql Server,Sql Server 2017,在Excel表格中,它包含与此类似的人员信息和电子邮件 S.N Email 1 short@abc.com 2 medium@xyzabc.com 3 abc@def.com 4 veryverylongemail@abcdefghijkl.com 5 averagesizemail@abc.com ................................... // there are hundreds of more email

在Excel表格中,它包含与此类似的人员信息和电子邮件

S.N    Email
1      short@abc.com
2      medium@xyzabc.com
3      abc@def.com
4      veryverylongemail@abcdefghijkl.com
5      averagesizemail@abc.com
...................................
// there are hundreds of more emails like these
在数据库中,假设有一个名为Persons的表,其中包含有关人员的所有信息。现在我只想得到那些UserEmail列包含上述电子邮件列表的记录

虽然我可以复制粘贴所有电子邮件,并使用类似以下的查询在数据库中搜索:

SELECT * FROM PERSONS WHERE USEREMAIL IN (
'short@abc.com',
'medium@xyzabc.com',
'veryverylongemail@abcdefghijkl.com'
..... )
因为有数百封电子邮件,所以这将是非常耗时的,因为我将不得不在每封电子邮件的前后插入引号,以及逗号。我正在寻找一个更简单的解决方案


搜索这些记录的最简单方法是什么?我只想搜索包含这些电子邮件的记录。

您应该使用导入数据选项在SQL server中导入excel文件。 转到SQL server management studio SSMS 右键单击数据库->单击任务->单击导入数据

在SQL Server表中导入数据后

您可以这样编写查询-

SELECT * FROM PERSONS WHERE USEREMAIL IN ( Select Email from <YourExcelImportedDataTableName> Where Email  is Not null)

将所有这些来自excel的电子邮件插入临时表,然后编写查询。