最快的方法将excel文档中的名称列表映射到查找表中的ID?

对于我的一个项目,我在一个下拉列表中显示一个县的列表(这个列表来自一个包含所有县的查找表)。 客户只是要求我将其限制在他们select的子集中。 这个子集在excel电子表格中给我的只有名字(见下面):

替代文字

我试图找出最快的方式,我可以映射到原来的查询表中的相应的ID。 客户不能给我这些ID。 这里的名字与我表中的名字相匹配(案例除外)。

这很可能是一次性的事情。

任何人都可以提出一个快速的方法来获得这些值到一个查询,所以我不必手动做到这一点?

当我说快时,我不是在谈论处理速度,只是最快的开始完成时间,导致我使用任何可用的工具获得相应的ID。

注意:我知道我可能已经手动完成了这个工作,但是我想知道以后的参考。

您可以使用外部数据查询进入另一个Excel工作表

SELECT countryname, countryid FROM countries 

然后使用VLOOKUP将ID提供到客户提供的工作表中

 =VLOOKUP(A1,Sheet2!$A$1:$B$200,2,FALSE) 

请参阅http://excelusergroup.org/blogs/nickhodge/archive/2008/11/04/excel-2007-getting-external-data.aspx在Excel 2007中创build外部数据表。跳转到“其他来源”部分。

  1. 把列表放在一个文本文件中。 编写一个powershell脚本,将获取该文件的内容,然后查询您的数据库输出密钥。 这是一个粗略的粗略的例子。

    get-content c:\ list.txt | ForEach-Object {invoke-sqlcmd -E -query“select blah blah where county =”_ $} | 格式表

  2. 如果您有权访问SSIS,则可以在Excel源和您的表之间进行连接。

  3. 您可以将Excel工作表加载到临时表中以充分利用您的所有SQL查询知识。

  4. 我相信( 也是的,这是事实 ),SQL可以创build一个电子表格链接的服务器。 然后你join,你就完成了。