三個(gè)影響SQL Server性能的關(guān)鍵(3)_Mssql數(shù)據(jù)庫教程
推薦:談SQL Server 數(shù)據(jù)挖掘應(yīng)用于商業(yè)智能中智能應(yīng)用的平臺(tái) 在過去的二十年中,經(jīng)濟(jì)快速發(fā)展,組織機(jī)構(gòu)普遍都收集了大量的商業(yè)數(shù)據(jù)。然而,擁有大量的數(shù)據(jù)并不意味著擁有了豐富的商業(yè)信息。因此,商業(yè)智能需要進(jìn)展到下一步數(shù)據(jù)挖掘。 數(shù)據(jù)挖掘能幫助您在瀏覽巨量數(shù)據(jù)的同時(shí)從中發(fā)現(xiàn)潛在有效的模式,并
3 查詢語句的設(shè)計(jì)
SQL Server優(yōu)化器通過分析查詢語句,自動(dòng)對(duì)查詢進(jìn)行優(yōu)化并決定最有效的執(zhí)行方案。優(yōu)化器分析查詢語句來決定那個(gè)子句可以被優(yōu)化,并針對(duì)可以被優(yōu)化查詢的子句來選擇有用的索引。最后優(yōu)化器比較所有可能的執(zhí)行方案并選擇最有效的一個(gè)方案出來。
在執(zhí)行一個(gè)查詢時(shí),用一個(gè)where子句來限制必須處理的行數(shù),除非完全需要,否則應(yīng)該避免在一個(gè)表中無限制地讀并處理所有的行。
例如下面的例子,
select qty from sales where stor_id=7131
是很有效的比下面這個(gè)無限制的查詢
select qty from sales
避免給客戶的最后數(shù)據(jù)選擇返回大量的結(jié)果集。允許SQL Server運(yùn)行滿足它目的的函數(shù)限制結(jié)果集的大小是更有效的。
這能減少網(wǎng)絡(luò)I/O并能提高多用戶的相關(guān)并發(fā)時(shí)的應(yīng)用程序性能。因?yàn)閮?yōu)化器關(guān)注的焦點(diǎn)就是where子句的查詢,以利用有用的索引。在表中的每一個(gè)索引都可能成為包括在where子句中的侯選索引。為了最好的性能可以遵照下面的用于一個(gè)給定列column1的索引。
第一:在表中的column1列上有一個(gè)單索引;
第二:在表中有多索引,但是column1是第一個(gè)索引的列不要在where子句中使用沒有column1列索引的查詢語句,并避免在where子句用一個(gè)多索引的非第一個(gè)索引的索引。
這時(shí)多索引是沒有用的。
For example, given a multicolumn index on the au_lname,
au_fname columns of the authors table in
the pubs database,
下面這個(gè)query語句利用了au_lname上的索引
SELECT au_id, au_lname, au_fname FROM authors
WHERE au_lname = ’White’
AND au_fname = ’Johnson’
SELECT au_id, au_lname, au_fname FROM authors
WHERE au_lname = ’White’
下面這個(gè)查詢沒有利用索引,因?yàn)樗褂昧硕嗨饕姆堑谝粋(gè)索引的索引
SELECT au_id, au_lname, au_fname FROM authors
WHERE au_fname = ’Johnson’
分享:怎樣改善SQL Server數(shù)據(jù)庫的內(nèi)存管理最近,為了能在數(shù)據(jù)庫服務(wù)器中運(yùn)行其他應(yīng)用程序,在保持?jǐn)?shù)據(jù)庫操作系統(tǒng)版本不變的前提下對(duì)數(shù)據(jù)庫服務(wù)器進(jìn)行了軟、硬件上的升級(jí)。在軟件上,將操作系統(tǒng)從Windows 2000升級(jí)到Windows Server 2003;在硬件上,將服務(wù)器中的內(nèi)存由原來的512MB增加到1GB(1024MB)。
- sql 語句練習(xí)與答案
- 深入C++ string.find()函數(shù)的用法總結(jié)
- SQL Server中刪除重復(fù)數(shù)據(jù)的幾個(gè)方法
- sql刪除重復(fù)數(shù)據(jù)的詳細(xì)方法
- SQL SERVER 2000安裝教程圖文詳解
- 使用sql server management studio 2008 無法查看數(shù)據(jù)庫,提示 無法為該請(qǐng)求檢索數(shù)據(jù) 錯(cuò)誤916解決方法
- SQLServer日志清空語句(sql2000,sql2005,sql2008)
- Sql Server 2008完全卸載方法(其他版本類似)
- sql server 2008 不允許保存更改,您所做的更改要求刪除并重新創(chuàng)建以下表
- SQL Server 2008 清空刪除日志文件(瞬間日志變幾M)
- Win7系統(tǒng)安裝MySQL5.5.21圖解教程
- 將DataTable作為存儲(chǔ)過程參數(shù)的用法實(shí)例詳解
Mssql數(shù)據(jù)庫教程Rss訂閱編程教程搜索
Mssql數(shù)據(jù)庫教程推薦
- SQL Server導(dǎo)入數(shù)據(jù)時(shí)id自增屬性丟失解決方法
- 詳解Windows Server 2008中的NAP
- 解讀4個(gè)編寫SQL語句需要注意的常識(shí)
- 實(shí)現(xiàn)刪除主表數(shù)據(jù)時(shí), 判斷與之關(guān)聯(lián)的外鍵表是否有數(shù)據(jù)
- 詳解SQL Server與ASP互操作的時(shí)間處理
- SQL SERVER數(shù)據(jù)庫開發(fā)之存儲(chǔ)過程應(yīng)用
- 看看自己掌握了多少SQL快捷鍵
- sql 游標(biāo)的使用—游標(biāo)FOR循環(huán)小例子
- 談值得收藏的SQL時(shí)間函數(shù)
- 解析SQL Server數(shù)據(jù)應(yīng)用在不同的數(shù)據(jù)庫中
猜你也喜歡看這些
- 用MyEclipse配置DataBase Explorer(圖示)
- 驗(yàn)證實(shí)例名稱是否正確
- Mysql兩種情況下更新字段中部分?jǐn)?shù)據(jù)的方法
- 服務(wù)器不支持 MySql 數(shù)據(jù)庫的解決方法
- 解析SQLite中的常見問題與總結(jié)詳解
- MySQL DELETE語法使用詳細(xì)解析
- 總結(jié)MySQL建表、查詢優(yōu)化的一些實(shí)用小技巧
- mysql 導(dǎo)入導(dǎo)出數(shù)據(jù)庫以及函數(shù)、存儲(chǔ)過程的介紹
- 深入SQLite基本操作的總結(jié)詳解
- 基于mysql事務(wù)、視圖、存儲(chǔ)過程、觸發(fā)器的應(yīng)用分析
- 相關(guān)鏈接:
- 教程說明:
Mssql數(shù)據(jù)庫教程-三個(gè)影響SQL Server性能的關(guān)鍵(3)
。