sql大提速,经过N次提速,从10多秒到1秒。

没靠加索引,纯sql优化,提速最快的,效果最好。

 


 WITH TEST AS
 (
 SELECT M1.FloderID,M1.ParentFloderID,M1.FloederName FROM MB_Favoriten M1  WHERE FloderID=0
 UNION ALL
 SELECT M2.FloderID,M2.ParentFloderID,M2.FloederName FROM MB_Favoriten M2 JOIN TEST ON M2.ParentFloderID=TEST.FloderID
 ),
 
 A AS
 (
 SELECT A1.* FROM MB_Employment A1 INNER JOIN
 (SELECT ResumeID,MAX(BEGDA) BEGDA FROM MB_Employment GROUP BY ResumeID) B1
 ON A1.BEGDA=B1.BEGDA AND A1.ResumeID=B1.ResumeID
 )
 
SELECT Fa.ID,Fa.ResumeID,L_NAME,(CASE WHEN Po.FOA_KEY=1 THEN '男' ELSE '女' END) Sex,
YEAR(GETDATE())-YEAR(B_DATE) AS Age,YearName,School.ShoolageName SchoolName,M.ZZEMPLR 'Company',M.ORT01 'poName' 
FROM MB_Favoriten_Resume Fa
LEFT JOIN MB_Posinal Po on Po.ResumeID=Fa.ResumeID
LEFT JOIN MB_WorkYears Work on Work.YearID=Po.YearID
LEFT JOIN MB_Education Edu on Edu.ResumeID=Po.ResumeID
LEFT JOIN MB_Shool_Age School on School.ShoolageId=Edu.EDUC_EST
LEFT JOIN A M ON  M.ResumeID=Fa.ResumeID
WHERE Fa.ITCode='wulina' AND EXISTS (SELECT FloderID FROM TEST T WHERE T.FloderID=Fa.FloderID)

### 回答1: 要提速 SQL Server 2000,可以尝试以下几个方法: 1. 优化查询:通过使用正确的索引、使用合适的查询语句、尽量减少查询中返回的数据量以及使用合适的连接方式等方法来优化查询效率。 2. 优化表设计:可以通过合理的表设计来提高性能,比如将相关的列放在一个表中、尽量避免使用过多的列、尽量避免使用过多的索引等。 3. 优化硬件:可以提升服务器硬件来改善 SQL Server 2000 的性能,比如增加更快速的存储设备、增加更多的内存和处理器等。 4. 优化缓存:可以调整 SQL Server 2000 的缓存设置,将更多的缓存分配给常用和复杂的查询,以减少磁盘访问的数,提升查询效率。 5. 定期维护数据库:定期进行数据库的索引重建、统计信息更新、日志清理等维护工作,以保持数据库的健康状态,提升 SQL Server 2000 的性能。 6. 升级到更高版本的 SQL Server:考虑升级到较新的 SQL Server 版本,如 SQL Server 2005、SQL Server 2008 等,这些版本可能具有更好的性能和优化功能。 总的来说,提速 SQL Server 2000 可以通过优化查询、优化表设计、优化硬件、优化缓存、定期维护数据库以及升级到更高版本的 SQL Server 等多种方法来实现。需要根据具体的环境和需求进行综合考虑,并且可能需要一些测试和调整来确定最适合的提速策略。 ### 回答2: 要对SQL Server 2000进行优化以提高其性能,可以考虑以下几个方面: 1. 数据库设计优化:对于大型数据库,可以考虑对表进行分区,将不同的数据存储在不同的文件组中,以提高查询性能和管理效率。另外,还可以根据查询频率和关联性将相关的表进行物理上的重组,减少磁盘寻址时间。 2. 索引优化:通过合理地创建索引,可以加快查询的速度。首先,需要确保主键和唯一键约束已经被创建,并在经常用于WHERE子句中的列上创建索引,以减少数据搜索的数。另外,可以考虑使用覆盖索引,将查询所需的列包含在索引中,避免回表操作。 3. 查询优化:通过优化查询语句,可以减少SQL Server的工作负载,从而提高性能。可以使用适当的JOIN类型、WHERE子句和ORDER BY子句来减少数据检索的量。另外,可以通过定期更新统计信息和重新编译存储过程来保持查询性能的稳定。 4. 硬件优化:可以考虑增加服务器的内存和处理器,以提升SQL Server的性能。较大的内存可以减少磁盘I/O操作,而更快的处理器可以加快查询的执行速度。 5. 定期维护:进行定期的数据库维护,例如备份和日志清理,以防止数据库过度增长和混乱。此外,还应定期监视日志和性能计数器,发现并解决潜在的性能问题。 综上所述,通过对数据库设计、索引优化、查询优化、硬件优化以及定期维护等方面的改进,可以有效地提升SQL Server 2000的性能。然而,请注意SQL Server 2000已经过时,建议考虑升级到更新的版本以获得更好的性能和功能。 ### 回答3: 要提高 SQL 2000 的速度,可以尝试以下几种方法: 1. 优化查询语句:通过使用正确的索引、避免使用不必要的连接和子查询等,可以减少查询的执行时间。可以使用 SQL Server Profiler 来分析查询的执行计划,找出潜在的性能问题。 2. 确保适当的硬件配置:SQL Server 2000 的性能很大程度上依赖于硬件的配置。确保服务器有足够的内存、处理器和存储空间,以支持数据库的运行。 3. 定期维护数据库:数据库的维护包括索引重建、统计信息更新、清除无效数据等。定期进行数据库维护可以提高查询性能和整体数据库的响应速度。 4. 使用分区表:如果数据库的表过大,可以考虑使用分区表来分割数据,以减少查询的范围和提高执行效率。 5. 升级到更高版本的 SQL Server:SQL Server 2000 已经相对较老且不再被微软支持,升级到更高版本的 SQL Server 可能会带来更好的性能和功能。 6. 调整服务器参数:根据具体的硬件和应用需求,可以调整 SQL Server 的参数,如最大内存、并发连接数等,以优化数据库的性能。 总结来说,要提高 SQL 2000 的速度,需要优化查询语句、确保适当的硬件配置、定期进行数据库维护、使用分区表、升级到更高版本的 SQL Server、调整服务器参数等。通过综合运用这些方法,可以最大程度地提高 SQL 2000 的性能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值