2012-07-23 89 views
0

我想盡量減少以下查詢的的Sybase ASE 12.5數據庫影響最小的「喜歡」上的Sybase ASE 12.5 DB請求

SELECT description_field FROM table WHERE description_field LIKE 'HEADER%' 
GO 

我懷疑我能不能做得比全表掃描更好的服務表現的影響沒有修改數據庫,但有人有一個想法?
由於使用了特殊的語法,相對於鎖定可能會有所改進嗎?

+0

[dba.se]是一個更好的網站,用於詢問有關SQL的與性能相關的問題。 – Will 2012-07-23 11:57:09

+0

如果你在這個列上有非聚集索引,那麼最好你可以得到它,因爲它將作爲非覆蓋索引工作。而且,如果你的NC索引有這個列和索引鍵大小小於錶行大小,那麼那個索引應該被使用,並且如果在列上沒有任何索引,最終表格掃描是最後的選項。 – 2012-07-23 13:29:09

+0

感謝您的寶貴意見! – freakhill 2012-07-24 03:48:50

回答

0

在這種情況下,您應該通過在description_field上添加一個索引來獲得大幅度的加速。

這是可行的,因爲類似的字符串以非通配符開始。如果字符串以%開始,那麼除了表掃描之外,沒有其他選擇。

+0

謝謝!我實際上無法創建索引,但我會嘗試檢查是否已有一個索引。 – freakhill 2012-07-23 04:06:22