gpt4 book ai didi

c# - SQL Server 中大型 IN 子句的替代方法

转载 作者:太空宇宙 更新时间:2023-11-03 23:26:37 24 4
gpt4 key购买 nike

我目前正在重构一个函数,该函数根据提供的搜索条件构建我们的自定义 WHERE 子句。我遇到的一个问题是用户对项目的访问。我从理赔服务处收到了一份 List<long>用户有权访问的所有项目 ID。目前这被格式化为 IN 子句:

SELECT * FROM items WHERE project_id IN (1, 2, 3, 4)

随着系统的扩展,这可能会膨胀到数千个 ID。我研究了如何避免 IN 子句,但大多数人使用存储过程或创建临时表并加入其中。截至目前,我必须使用 claim 服务和我的 ID 列表。

鉴于我的限制,有没有更好的方法来做到这一点?如果没有,我可以升级问题以进行更大的重构。提前致谢。

最佳答案

我假设您的列表是作为分隔字符串提供的;几分钟前,我刚刚在这个网站上回答了一个关于如何绕过这个限制的类似问题。

链接:Work around 'IN' clause limitation

关于c# - SQL Server 中大型 IN 子句的替代方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33619152/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com