Questions tagged «query»

编写查询以请求或更改存储在数据库或其他信息管理系统中的信息。问题应包括表和索引的定义,示例数据,预期输出以及特定系统(例如MySQL,PostgreSQL,Oracle,SQL Server,MongoDB)的标记。

5
SQL Select花费太多时间执行
这是从临时表中进行的简单选择,左键将现有表保留在其主键上,其中两个子选择使用前1个引用联接表。 在代码中: SELECT TempTable.Col1, TempTable.Col2, TempTable.Col3, JoinedTable.Col1, JoinedTable.Col2, ( SELECT TOP 1 ThirdTable.Col1 -- Which is ThirdTable's Primary Key FROM ThirdTable WHERE ThirdTable.SomeColumn = JoinedTable.SomeColumn ) as ThirdTableColumn1, ( SELECT TOP 1 ThirdTable.Col1 -- Which is also ThirdTable's Primary Key FROM ThirdTable WHERE ThirdTable.SomeOtherColumn = JoinedTable.SomeColumn ) as ThirdTableColumn2, FROM …

3
XML查询问题
我正在尝试生成SQL查询,以从以下SQL XML中获取“ DATE”值: 我已经尝试过类似的方法,但我认为我不了解这些概念。 select xConfig.value('(/SearchjobConfig/QueryString/SearchCriteria/ExpressionSet/SimpleAttributeExpression) [1]','nvarchar(max)') from Job 这是XML文本: <SearchJobConfig> <QueryID>1072</QueryID> <QueryString> <SearchCriteria name="Search query" > <ExpressionSet logicalOperator="AND"> <SimpleAttributeExpression displayName="Date" npmPropertyId="4" searchOperation="GREATER_EQUAL" dataType="string" caseSensitive="false">2019-06-01T04:00:00</SimpleAttributeExpression> <SimpleAttributeExpression displayName="Date" npmPropertyId="4" searchOperation="LESS_EQUAL" dataType="string" caseSensitive="false">2019-06-13T03:59:59</SimpleAttributeExpression> <SimpleAttributeExpression displayName="Class" npmPropertyId="1056" searchOperation="EQUALS" dataType="int32" caseSensitive="false">65</SimpleAttributeExpression> </ExpressionSet> </SearchCriteria> </QueryString> </SearchJobConfig> 预期的输出将是日期: 2019-06-01T04:00:00 2019-06-13T03:59:59 以及如何在同一行上获得结果。示例: date_val_start date_val_end 2019-06-01T04:00:00 2019-06-13T03:59:59 我正在使用SQL …

3
在全文搜索查询中优化ORDER BY
我有一张entities约有1500万条记录的大桌子。我想在其中找到与“曲棍球”匹配的前5行name。 我在上有全文索引name,该索引用于:gin_ix_entity_full_text_search_name 查询: SELECT "entities".*, ts_rank(to_tsvector('english', "entities"."name"::text), to_tsquery('english', 'hockey'::text)) AS "rank0.48661998202865475" FROM "entities" WHERE "entities"."place" = 'f' AND (to_tsvector('english', "entities"."name"::text) @@ to_tsquery('english', 'hockey'::text)) ORDER BY "rank0.48661998202865475" DESC LIMIT 5 持续时间25,623 ms 解释计划 1个限制(cost = 12666.89..12666.89行= 5宽度= 3116) 2->排序(费用= 12666.89..12670.18行= 6571宽度= 3116) 3排序键:(ts_rank(to_tsvector('english':: regconfig,(name):: text),'''hockey''':: tsquery)) 4->对实体进行位图堆扫描(cost = 124.06..12645.06行= 6571宽度= 3116) …

3
SQL Server-多个运行总计
我有一个包含事务的基本表,我需要创建一个具有运行总计的表。我需要它们是每个帐户的,并且每个帐户还有一些运行总计(取决于交易类型),在其中,每个子帐户都有一些运行总计。 我的基本表具有以下字段(或多或少): AccountID | SubAccountID | TransactionType | TransactionAmount 考虑到我每个Account / TransactionType有大约4种类型的运行总计,每个Account / SubAccount / TransactionType有2种以上的运行总计,我有大约200万个帐户,每个大约有10个子帐户,而我的交易量约为1万笔每分钟(在最大负载下),您将如何做? 这也必须通过SQL作业异步运行,以创建聚合而又不属于事务本身。 我在这里使用游标非常费时-花费的时间太长。我真的很感激任何或多或少都相同的建议/文章。

3
删除所有重复项
我正在尝试删除所有重复项,但仅保留单个记录(较短的ID)。以下查询会删除重复项,但要进行大量迭代才能删除所有副本并保留原始副本。 DELETE FROM emailTable WHERE id IN ( SELECT * FROM ( SELECT id FROM emailTable GROUP BY email HAVING ( COUNT(email) > 1 ) ) AS q ) 它的MySQL。 编辑#1 DDL CREATE TABLE `emailTable` ( `id` mediumint(9) NOT NULL auto_increment, `email` varchar(200) NOT NULL default '', PRIMARY KEY (`id`) …
8 mysql  query  delete 
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.