在Azure托管的sql server实例数据库上,我需要
Select top 1000 * from _CSP_Detail.
数据表是空的,因为昨天我从表中删除了所有数据(从_CSP_Detail删除*)。
它过去有一百万行,而删除则需要一段时间。表上有一只满是索引/索引的手。
在删除之后,今天,我发现
Select top 1000 * from _CSP_Detail
不会像预期的那样拉动任何东西,但需要超过一分钟的时间才能运行。
迷惑了。有什么想法吗?
在sql server 2012中,我有一个包含超过2,500万行重复项的表。该表没有唯一索引。它只有一个非聚集索引。我想消除重复项,所以我考虑了以下几点。
select distinct * into #temp_table from primary_table
truncate primary_table
select * into primary_table from #temp_table
我想知道select distinct *查询的开销有多大。如果我上面的程序非常昂贵,我想知道是否有其他方法。
我有一张桌子如下
ID Name Code
1 x y
5 c v
3 v h
10 k 4
23 m g
现在我想重订5000的订单,如下所示
ID Name Code
5001 x y
5002 c v
5003 v h
5004 k 4
5005 m g
在表包含超过百万行的情况下,处理这个问题的最快查询SQL Server是什么?
编写一个SQL查询,从表X的列A中查找表Y的列B中不存在的那些值。
update:查询耗时太长,not in (超过5分钟,我没有等待它完成)表Y中的列B是主键。
更新:我正在使用oracle。两个表的表大小都以百万(行)为单位。当然,我使用的是另一个WHERE子句,这意味着我将表X的大约500,000行与表Y中的数百万行进行比较
我看到最近Sql server从Sql server 2005升级到2008 r2后出现了奇怪的行为。在升级之前,下面的查询运行在亚秒级,但现在升级后,它需要10秒,.Both表有数百万行。
模型表中可为空的列colB上有索引。下面的查询显然是在执行索引扫描,因为Join子句中使用了标量函数isnull。
select distinct a.colA
from ptransaction a
inner join model b on ISNULL(b.colB,0) = a.colB
where a.transid
我有一个包含数百万行的表,我需要连接它们才能执行selects操作。响应时间不是很好,如何提高响应速度?我已经尝试向我选择的列添加索引,有没有工具可以用来优化sql,或者我如何诊断sql的瓶颈并改进它?任何建议都将不胜感激。我使用oracle server 10g,并使用asp.net作为我的客户机。有没有其他类型的索引对有数百万行的表有帮助?