问题标签 [database-cursor]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
91 浏览

sql - SQL 从数据表和模式表生成匹配

给定一个包含 id、color、size 列的数据表和第二个包含规则/模式的表,如 rule_id、color_condition 和 size_condition。

所以基本规则是 rule_id=1,Color=blue, size=Any 或 rule_id=2,Color=blue, size=15

如何构造一个 SQL 查询,将匹配项生成到第三个表中

例如,对于数据表 id=1、color=blue、size=10 中的条目,两个规则都适用,因此匹配表将包含两个条目

如何循环遍历模式以及如何构造匹配,以便它可以处理通配符或在它们为空时省略条件。

请提供方向或关键字,我准备阅读。

0 投票
2 回答
2406 浏览

postgresql - 如何减少 PostgreSQL 中长时间运行的 i/o 密集型查询的影响?

这篇文章建议我可以使用游标以受限制的速率从查询中获取。我该怎么做呢?

我的目标是减少这个低优先级查询对其他高优先级查询的影响。

0 投票
1 回答
448 浏览

php - SQL 游标查询或两个单独的查询:哪个更高效?

我正在努力使一些代码更有效地处理 PHP 中的消息树。数据存储在 SQL 数据库中,目前每条消息要执行 2 次 SQL 查询,一次查找数据,一次更新数据。我想我有办法通过单个查询来完成这项工作,但它使用的游标我听说比其他 SQL 方法慢得多。

有谁知道执行一个使用游标的 SQL 查询是否仍然更有效,还是坚持使用当前方法更好,该方法使用每条消息的选择和更新查询以及 PHP 将查询绑定在一起?

0 投票
1 回答
1280 浏览

python - 如何在 MongoKit 中关闭光标

我正在使用 MongoKit 对大量数据执行迭代。

在此过程中,我的光标变得无效,我得到

OperationFailure: cursor id '369397057360964334' not valid at server

我在邮件列表中读到我可以将参数传递timeout=False.find()方法,但PyMongo 常见问题解答说我必须自己负责关闭光标。

但是我没有在 MongoKit 中找到方法。

我是否需要自己关闭光标,如果是 - 我该怎么做?

0 投票
5 回答
25785 浏览

android - Android SQLiteDatabase 中的光标大小限制

我从互联网上下载了一个数据库。我将它保存在我的数据文件夹中并打开它。在 db 中有一个包含 6 个字段的“广告”表。其中 2 个字段是 BLOB。当我想从这个表中读取时......我有一些问题......我注意到,当我读取一个大于 1 兆字节的 blob 字段的行时,这会导致异常......“从行获取字段槽0 列 0 失败”。如果它是一个小斑点,一切都很好......在此先感谢:)

0 投票
9 回答
47721 浏览

sql-server - 用于 sql 循环的游标的替代方法是什么?

使用 SQL 2005 / 2008

我必须使用前向光标,但我不想表现不佳。有没有更快的方法可以在不使用游标的情况下循环?

0 投票
1 回答
2875 浏览

android - SQLite 数据库和游标

我想知道是否有人可以简要介绍一下 Android 游标。几个具体问题:

1 - 我有一个在数据库查询后返回游标的方法:

为了做家务,我在 return 语句之前尝试了 db.close() 。但是,这会导致返回的游标不包含任何行。为什么是这样?

2 - 关闭游标和关闭数据库有什么区别?

3 - 如果游标是局部变量,我是否需要在游标上调用 close,还是可以将其留给垃圾收集器进行清理?

4 - 我的数据库很小,仅由我的应用程序使用 - 我可以让它保持打开状态吗?

0 投票
2 回答
509 浏览

sql-server - 使用动态列和百分比匹配匹配和排名查询

我正在尝试为客户编写一个排名匹配/搜索系统,该系统将查看请求的材料(MaterialRequest 表)并找到可以提供材料并对结果进行排名的提供者(其中 userprofile.usertype_id = 1)可以提供最多或全部的材料。这是我拥有的数据库架构:

用户资料表

请求表

材料请求表

MaterialProvider 表

材料表

因此,例如,如果我有这个请求:

并要求提供这些材料

并且 MaterialProvider 被填充为

我希望我的输出看起来像

其中列名来自请求中的材料。然后能够找到可以提供超过给定百分比的所需材料的供应商。

我从一个临时表和一个游标开始

  1. 将列添加到临时表
  2. 然后遍历 3000+ 个提供者并添加那些可以提供指定材料的提供者。

有一个更好的方法吗?该过程花费的时间太长,并且希望获得有关如何编写此类内容的更好/最佳实践。

0 投票
4 回答
14064 浏览

python - Python + MongoDB - 光标迭代太慢

我实际上在一个搜索引擎项目中工作。我们正在使用 python + mongoDb。

在对 mongo db 执行 find() 命令后,我有一个 pymongo 光标。pymongo 游标有大约 20k 个结果。

我注意到 pymongo 光标上的迭代与普通迭代相比非常慢,例如相同大小的列表。

我做了一个小基准测试:

  • 迭代 20k 字符串列表:0.001492 秒
  • 迭代 pymongo 游标,结果为 20k:1.445343 秒

差别真的很大。这么多结果可能不是问题,但如果我有数百万个结果,时间将是不可接受的。

有没有人知道为什么 pymongo 游标迭代速度太慢?知道如何在更短的时间内迭代光标吗?

一些额外的信息:

  • Python v2.6
  • PyMongo v1.9
  • MongoDB v1.6 32 位
0 投票
6 回答
335 浏览

sql - SQL Server 2008:复杂插入

我有一张桌子叫Employees

对于中的每条记录,Employees我需要将每年插入一个名为的新表中EmployeeYears

所以:

在 SQL 中执行此操作的任何方法...可能使用游标?