问题标签 [query-analyzer]
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.
lucene - 使用 Lucene 的关键字分析器时遇到的问题
无法正确使用 lucene 的关键字分析器,
OUTCOME: (id:new location:new) (id:york location:york)
预期结果: (id:new york location:new york) (id:new york location:new york)
请帮我确定我在这里做错了什么?
postgresql - 在处理文本搜索和地理空间数据时如何影响 Postgres 查询分析器
以下语句存在一个非常严重的性能问题,我无法自行修复。
给定情况
- 我有一个安装了 Postgis 1.4 的 postgres 8.4 数据库
- 我有一个大约 900 万个条目的地理空间表。该表有一个(postgis)几何列和一个 tsvector 列
- 我在几何上有一个 GIST 索引,在 vname 列上有一个 VNAME 索引
- 表是
ANALYZE
'd
我想to_tsquery
在这些几何的子集中执行文本搜索,这应该给我所有受影响的 id。
要搜索的区域会将 900 万个数据集限制为大约 100.000 个,并且ts_query
该区域内部的结果集很可能会给出 0..1000 个条目的输出。
问题
查询分析器决定他想先对 vname 进行位图索引扫描,然后聚合并在几何上放置一个过滤器(以及我在此语句中的其他条件)
查询分析器输出:
这会导致大量 I/O - AFAIK 先限制几何形状,然后再进行 vname 搜索会更聪明。
尝试的解决方案
为了实现所需的行为,我试图
- 我将 geom @@
AREA
放入子选择中-> 没有更改执行计划 - 我用所需的区域子集创建了一个临时视图 -> 没有更改执行计划
- 我创建了一个所需区域的临时表 -> 创建需要 4~6 秒,这样就更糟了。
顺便说一句,很抱歉没有发布实际查询:我认为如果我这样做了,我的老板真的会生我的气,而且我正在寻找更多的理论指针来解决我的实际查询。请询问您是否需要进一步说明
编辑
width
Richard 有一个非常好的观点:您可以通过语句实现 Query Planner 的预期行为。坏事是这个临时表(或 CTE)弄乱了 vname 索引,因此在某些情况下使查询不返回任何内容。
我可以通过使用 动态创建一个新的 vname 来解决这个问题to_tsvector()
,但这(太)昂贵 - 每个查询大约 300 - 500 毫秒。
我的解决方案
我放弃了 vname 搜索并使用了一个简单的LIKE('%query_string%')
(10-20 毫秒/查询),但这仅在我给定的环境中速度很快。YMMV。
sql-server - 在 SQL Server(查询分析器)的查询结果中识别隐藏字符的最佳方法是什么?
在尝试识别错误数据(通常需要手动查看和删除)时,我想要一种查看隐藏字符的简单方法,例如 TAB、空格、回车和换行。有内置的方法吗?
在 stackoverflow 上的一个类似问题中,关于 Oracle,建议使用 DUMP(fieldname) 函数,但我不知道即使 SQL Server 中存在相应的函数,这是否会使事情变得更容易,因为我需要查看 Characters在他们的背景下。
我能想到的最好的主意是用可见的字符替换预期的隐藏字符,如下所示:
SELECT REPLACE(REPLACE(REPLACE(REPLACE(myfield, ' ', '˙'), CHAR(13), '[CR]'), CHAR(10), '[LF]'), CHAR(9), '[TAB]') FROM mytable
有没有更好的办法?我不喜欢这种方式,因为我可能没有考虑其他不太常见的隐藏字符,例如垂直 TAB 等……打开“显示隐藏字符”,几乎可以在任何文本编辑器中执行,在 SQL Server 查询分析器中将是一个很好的功能,所以我几乎希望它也可以在 SQL Server 中以某种方式完成......或者至少有人有比我更好的想法来显示这种空白信息。
我刚刚注意到有一种内置方式可以查看“空白”,不是在 SQL 查询分析器中,而是在曾经是 SQL Enterprise 管理器的界面部分中。右键单击 SQL Management Studio 对象资源管理器树中的表,然后选择“编辑前 200 行”。在结果中,空白(至少 CR LF)显示为空方块。
solr - 如何强制 solr QParserPlugin 不对关键字字段使用空格标记器?
我在 Solr 模式中有关键字字段。
当我尝试使用默认的 solr 查询或 dismax 查询搜索此字段时,
category:(Mouse Pad)
它会创建查询(category:Mouse) AND (category:Pad)
我想知道如果它是关键字字段左右,是否有办法不通过空格分割术语。
补充:我需要SimpleKeywordTokenizerFactory
在查询中分析(小写没有空格分割),所以raw
查询term
解析器对我不起作用
java - 找不到分析器在 elasticsearch couchdb 河上执行查询字符串
很确定我犯了一些巨大的错误,但我不知道如何对其进行排序。
我的 couchdb 河和我的索引定义如下:
查询是通过 JAVA 应用程序执行的:
在查询阶段,我面临一个 QueryParsingException,告诉我我的自定义分析器丢失了:
我做错了什么?我真的需要索引和搜索阶段的 asciifolding 功能。
谢谢!
sql-server-2000 - 使用 Checkpoint 清除脏页,并从 MemoryStatus 获取结果
警告:我是一个多面手,我所知道的关于配置 SQL 服务器的知识,你可以收集起来放在你的肚脐中,并且棉绒不会被取代。大多数情况下,我可以编写查询来获得我需要的东西。不幸的是,我还负责让服务器完成它的工作,而我对此几乎一无所知。
我正在尝试解决慢速 SQL Server (2000) 的问题。我希望我的测试查询的时间一致,所以我正在清除缓冲区/缓存。
除其他事项外,我想确保所有脏页在乱搞之前都已写入磁盘。
但是如果我运行命令:
...脏页计数不变。
我重新启动了服务器,它确实发生了变化,但在启动时仍然列出了 70 个脏页。
我显然不明白这里的东西。是否有一种良好且一致的方法来确保当我运行计时测试时,我从处于相同状态的服务器开始?(这是一个活跃网站上的实时服务器,我宁愿不要每 10 分钟重新启动一次。)
tsql - MS SQL 2008 R2 Queryanalyzer 在代码中成功运行。LOGO 应用程序中的失败 SQL 代码字段正在运行
MS SQL 2008 R2 Queryanalyzer 在代码中成功运行。LOGO 应用程序中的失败 SQL 代码字段正在运行。
错误 :
我的代码:
此外,任何用于报告的应用程序、运行平稳的 t-sql 代码、queryanalzer。如果您可以从堆栈中识别出堆栈溢出错误,那么是否有可能转换数据?如何?您可以在视频中找到逐步解释的文档吗?
错误详情:
cpu registers: eax = 0d3e2f60 ebx = 0d40ef98 ecx = 00000000 edx = 0042967e esi = 00000019 edi = 0012fc24 eip = 0042967e esp = 0012efa8 ebp = 0012f004
sql-server - 查询在查询分析器中运行很快,但在 C# 应用程序中运行缓慢
使用 SQL Server 2005,在几个大表上有一个 sql 查询,它在程序中超时。但是,当我在查询分析器中运行它时,它会在大约 30 秒内完成。
为什么有区别?
sql-server-2005 - SQL Server 2005 Express 版中有查询分析器吗?
我已经下载了 SQL Server 2005 Express 版本,但我无法使用精细查询分析器来运行查询或设计数据库。
sql-server - 是否可以在查询分析器中为“编辑前 200 行”修改默认 SQL?
如果我想编辑底部 200 行或自定义查询,这可能吗?