可能重复:
T-SQL WHERE col IN (...)
SQL Server 查询的最大大小是多少?(字符数)
IN 子句的最大大小?我想我看到 Oracle 有 1000 个项目的限制,但你可以通过 ANDing 2 个 IN 一起解决这个问题。SQL Server 中的类似问题?
更新 那么,如果我需要从另一个系统(非关系数据库)获取 1000 个 GUID 并对 SQL Server 执行“代码中的加入”,那么最好的方法是什么?是将 1000 个 GUID 的列表提交给 IN 子句? 或者还有其他更有效的技术吗?
我尚未对此进行测试,但我想知道是否可以将 GUID 作为 XML 文档提交。例如
<guids>
<guid>809674df-1c22-46eb-bf9a-33dc78beb44a</guid>
<guid>257f537f-9c6b-4f14-a90c-ee613b4287f3</guid>
</guids>
然后针对 Doc 和 Table 执行某种 XQuery JOIN。效率低于 1000 项 IN 子句?