iT邦幫忙

0

SQL SERVER需要每一種欄位的排列組合都要設定一組索引嗎

請教各位先進:
目前管理一套 SQL Server 2005,假設有一個資料表約50個欄位,假設其中的A,B,C ~ H這八個欄位,是常常被加在Where 之後的查詢條件,但是常常會需要排列組合,例如
Where B>5 and G < 20
Where D>20 and E <30 and F=50
Where A=3 and C<30 and D=200
Where B<13 and E=30 and H<55
…………………………..等等約 15種排列組合

我的問題是:
(1) 只要建一組索引,包含A,B,C ~ H這八個欄位
或是
(2)只要有一種多個欄位的排列組合,就要建立一個索引,所以按照上述例子,要建立15個排列組合 ?

感謝各位………….

看更多先前的討論...收起先前的討論...
好問題

可以考驗回答者的基本觀念是否正確

我不回答
因為我是「無索引派」
做菜
魯大 iT邦高手 1 級 ‧ 2016-04-21 09:55:42 檢舉
我是屬於不考慮太多的那一類型
汗
SQL Server 2005
你的1,2都不好.
1. Multiple Column Indexes
其實還是依照第一個Column.
參考: http://www.sqlconsulting.com/news1012.htm
Myth 3: Multiple Column indexes can be used to search on any of the fields contained in the index.

2. 也是一樣多個欄位. 但是 select 時要依照順序排好.
DB也不一定會依照你想的那樣執行,要補上 hint 指定index.
--------------
為何我會說1,2都不好呢.
這是Table設計錯了,搞一個一字長蛇陣.
tmc8837 iT邦新手 5 級 ‧ 2016-04-21 16:37:06 檢舉
謝謝 !!
不過 不管是哪一種資料庫 , 資料筆數多到一定程度 , 不能不建索引吧 ?
tmc8837 iT邦新手 5 級 ‧ 2016-04-21 16:38:45 檢舉
受教了....謝謝!!

1 個回答

0
stephen3342
iT邦新手 4 級 ‧ 2016-04-21 08:22:34

有機會了解一下
SQL Server 商業智慧
大致內容
順應巨量資料(Big Data)的發展趨勢,巨量資料分析的商業智慧BI儼然為市場新顯學,專精分析的專業人員也成為企業新寵。SQL Server 2012透過高可用性(High Availability)、商業智慧(Business Intelligent)以及與雲端的完美整合,協助企業將散落各地的巨量資料迅速轉化為能實際運用的分析資訊與市場洞察力。

●重新認識商業智慧2.0的新架構,兼顧企業內部需求與新技術學習狀況,規劃出最適合企業內部的導入計畫。

●介紹PowerPivot這個以記憶體運算為基礎的全新資料儲存體,提供全新的資料來源,以提供最低的建置門檻,滿足最即時的分析需求。

●快速掌握全新的資料分析語言(DAX,Data Analysis Expression),以熟悉的Excel公式函數結構為基礎,免去學習高難度MDX的障礙。

●高度視覺化的Pivot View,讓報表不只是報表,還能透過各種手勢操作與圖表進行互動,快速展現資料趨式。

●「商業智慧表格式語意模型(BISM Tabular)」是以記憶體為基礎的企業及商業智慧資料模型架構,能夠大幅簡化商業智慧開發過程,讓商業智慧的威力能在企業內部無遠弗屆。

●Power View提供了卡片檢視、動態泡泡圖、迷你工具列、封面翻閱(Cover Flow)等炫目的視覺化效果,無需撰寫程式即可達成。

看更多先前的回應...收起先前的回應...
raytracy iT邦大神 1 級 ‧ 2016-04-21 11:22:27 檢舉

這是....神展開嗎?.......暈

講一個影,生一個子
讚

stephen3342提到:
順應巨量資料(Big Data)的發展趨勢,巨量資料分析的商業智慧BI儼然為市場新顯學

BI 很久以前就有了.沒必要硬往Big Data靠.

hitomitanaka提到:
BI 很久以前就有了.沒必要硬往Big Data靠.

我之前還看過更厲害的
不管什麼五四三
都可以靠成一種報表產生器
汗

我要發表回答

立即登入回答