建立SQL索引,檢視SQL效能語句收集

2022-02-08 04:02:03 字數 2116 閱讀 2287

sql中建立主鍵非聚集索引和聚集索引

code

--排序(聚集索引)

create

clustered

index

inx_entry_stock_bi 

onentry_stock_d(entry_stock_bi)

--建立非聚集索引

create

nonclustered

index

inx_entry_stock_on entry_stock_d(entry_stock_bi)

--主鍵

alter

table

entry_stock_d 

addprimary

keynonclustered

--主鍵且非聚集

(entry_stock_bi,aid

)select

*from

sysobjects 

where

parent_obj in(

select

id from

sysobjects 

where

xtype='

u'andname='

saleticket_currency_d')

alter

table

saleticket_currency_d 

drop

constraint

pk__saleticket_curre__1f8e9120

alter

table

saleticket_currency_d 

alter

column

card_id  

varchar(20

) not

null

alter

table

saleticket_currency_d 

addconstraint

pk__saleticket_curre__1f8e9120 

primary

keynonclustered

(saleticket_bi,currency_id,card_id)

create

clustered

index

pk__tb_d_seq  

ontb_d(tab_id,seq)

如何測試sql語句效能,提高執行效率

有時候我們經常為我們的sql語句執行效率低下發愁,反覆優化後,可還是得不到提高

那麼你就用這條語句找出你sql到底是在**慢了

code

示例: 

setstatistics

io on

setstatistics

time 

ongo

---你要測試的sql語句

select

top100

*from

tbl_cot_recstaticlist

goset

statistics

profile 

offset

statistics

io off

setstatistics

time 

off關於sql語句的執行效率測試

在網上找了好久都沒有找到關於可以模擬測試資料和sql語句執行時間效率的測試工具,算了自己寫乙個吧,很簡單的:

我們必須先得知道sql語句執行的開始時間和結束時間,比如我們要知道select * from article語句的執行效率:

code

declare

@ddatetime

---定義乙個datetime的變數

set@d

=getdate

()   

---獲取查詢語句開始前的時間

select

*from

article   

---執行查詢語句

select

語句的執行時間

=datediff

(ms,@d,

getdate

())  

---使用datediff()函式,計算精確到ms的執行時間

就這麼簡單。

mysql 建立索引 刪除索引 檢視索引sql語句

在執行create table語句時可以建立索引,也可以單獨用create index或alter table來為表增加索引。alter table用來建立普通索引 unique索引或primary key索引。alter table table name add index index name ...

SQL 索引 建立索引

create index 語句用於在表中建立索引。在不讀取整個表的情況下,索引使資料庫應用程式可以更快地查詢資料。您可以在表中建立索引,以便更加快速高效地查詢資料。使用者無法看到索引,它們只能被用來加速搜尋 查詢。注釋 更新乙個包含索引的表需要比更新乙個沒有索引的表更多的時間,這是由於索引本身也需要...

SQL 建立索引

總結 什麼是索引 資料庫中的索引是某個表中一列或多列值的集合和相應的指向表中物理標識這些值的資料頁的邏輯指標清單。分類 唯一索引 unique 不允許兩行具有相同的索引值 建立了唯一約束,系統將自動建立唯一索引 主鍵索引 主鍵索引要求主鍵中的每個值是唯一的,建立主鍵自動建立主鍵索引 聚集索引 clu...