gpt4 book ai didi

c# - SqlDataReader 涉及带连接的查询

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

我有 2 个表通过外键 (ID) 链接。在 table1 中有 100 万条记录。在表 2 中有 5000 万条记录。

我想从表 1 中读取记录并读取表 2 的所有关联记录。我可以使用 SqlDataReader 并实现 peek() 来实现此功能,如所讨论的这里 ( How do I implement a Peek() function on a DataReader? )

select ID, Col1 from Table1 order by ID

select ID, col2 from Table2 order by ID

但是 peek 方法的缺点是我必须在推进父结果的指针之前将每个子记录与父记录进行比较。

如果我在 SQL Server 中使用连接,它会执行连接操作,然后开始流式传输需要大量内存的结果。

另一种方法是分批划分连接操作,但这涉及触发多个我不想要的 SQL 查询..

能否请您提出一些替代方法来实现这一目标?

最佳答案

如果我对您的问题的理解正确,您可能需要考虑使用分区表。 Here's the MySQL manual page on partitioning , 和 here's a Stack Overflow question that deals with partitioning and joins

关于c# - SqlDataReader 涉及带连接的查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24852802/

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