① sql中創建索引的"索引"是什麼意思啊
索引用來快速地尋找那些具有特定值的記錄,所有MySQL索引都以B-樹的形式保存。如果沒有索引,執行查詢時MySQL必須從第一個記錄開始掃描整個表的所有記錄,直至找到符合要求的記錄。表裡面的記錄數量越多,這個操作的代價就越高。如果作為搜索條件的列上已經創建了索引,MySQL無需掃描任何記錄即可迅速得到目標記錄所在的位置。如果表有1000個記錄,通過索引查找記錄至少要比順序掃描記錄快100倍。 假設我們創建了一個名為people的表: CREATE TABLE people ( peopleid SMALLINT NOT NULL, name CHAR(50) NOT NULL ); 然後,我們完全隨機把1000個不同name值插入到people表。下圖顯示了people表所在數據文件的一小部分: 可以看到,在數據文件中name列沒有任何明確的次序。如果我們創建了name列的索引,MySQL將在索引中排序name列: 對於索引中的每一項,MySQL在內部為它保存一個數據文件中實際記錄所在位置的「指針」。因此,如果我們要查找name等於「Mike」記錄的peopleid(SQL命令為「SELECT peopleid FROM people WHERE name='Mike';」),MySQL能夠在name的索引中查找「Mike」值,然後直接轉到數據文件中相應的行,准確地返回該行的peopleid(999)。在這個過程中,MySQL只需處理一個行就可以返回結果。如果沒有「name」列的索引,MySQL要掃描數據文件中的所有記錄,即1000個記錄!顯然,需要MySQL處理的記錄數量越少,則它完成任務的速度就越快。
滿意請採納
② 表的索引是什麼意思
索引是一個單獨的、物理的資料庫結構,它是某個表中一列或若干列值的集合和相應的指向表中物理標識這些值的數據頁的邏輯指針清單。
索引提供指向存儲在表的指定列中的數據值的指針,然後根據您指定的排序順序對這些指針排序。資料庫使用索引的方式與您使用書籍中的索引的方式很相似:它搜索索引以找到特定值,然後順指針找到包含該值的行。
在資料庫關系圖中,您可以在選定表的「索引/鍵」屬性頁中創建、編輯或刪除每個索引類型。當保存索引所附加到的表,或保存該表所在的關系圖時,索引將保存在資料庫中。
③ sql中索引有什麼用
索引用來提高讀取數據的速度。
比如你要從一個有一萬條記錄的表中讀取記錄,那麼如果有索引,他會通過索引定位,找到你要找的記錄,速度比一個一個記錄的掃描錶快很多很多倍。
表的某一個列可以建立索引,也可以是幾個列一起建立索引。
索引有主鍵索引、唯一性索引等。
主鍵的索引是默認的,不能刪除。
你可以先看看數據結構->排序,查找,B-Tree,red-black tree等內容。然後看看資料庫系統原理的一些基本概念,不用全看懂。然後下載MySQL資料庫,安裝,寫一些測試程序,往表裡寫個百八十萬條記錄,然後查詢。。。
④ 關於sql索引
在SQL
Server中,為了查詢性能的優化,有時我們就需要對數據表通過建立索引的方式,目的主要是根據查詢要求,迅速縮小查詢范圍
⑤ SQL中的索引是怎麼回事
索引就好像一本書的目錄,可以方便快速定位到你想要的內容。你只要在適當的列上創建索引,查詢的時候SQL會自己判斷是否使用索引
⑥ 什麼是SQL中的索引
SOL中的索引就類似與書中的目錄,幫助你快速找到所需要的東西。
⑦ 在數據表中索引有什麼用,怎麼建立索引
索引用於快速找出在某個列中有一特定值的行,不使用索引,MySQL必須從第一條記錄開始讀完整個表,直到找出相關的行,表越大,查詢數據所花費的時間就越多。建立索引的操作步驟如下:
1、首先我們打開一個要操作的數據表,如下圖所示,我們需要給name欄位添加索引。
⑧ sql 索引怎麼去理解並應用
1、聚集索引和非聚集索引
在SQL Server 2000資料庫中,按照存儲結構的不同,可以將索引分為聚集索引和非聚集索引。
聚集索引
聚集索引對表在物理數據頁中的數據按索引列進行排序,然後再重新存儲到磁碟上。即數據的實際存儲按索引列值的大小順序安排。由於表中的數據行只能以一種排序方式存儲在磁碟上,所以一個表只能有一個聚集索引。(排序、重新存儲數據行、建立聚集索引)
聚集索引對表中的數據一一進行排序,因此用聚集索引查找數據很快。但由於聚集索引需要將表的所有數據完全重新排列,所需要的空間也就特別大,大概相當於表中數據所佔的120%。聚集索引一般創建在表中經常搜索的列或者按順序訪問的列上。
使用聚集索引的好處
�8�5 聚集索引對於那些經常要搜索范圍值的列特別有效。使用聚集索引找到包含第一個值的行後,便可以確保包含後續索引值的行在物理相鄰。
�8�5 如果經常按照某一列,對從表中檢索出來的數據進行排序,那對這一列創建聚集索引講避免每次都對數據排序。
非聚集索引
非聚集索引具有完全獨立於數據行的結構,使用非聚集索引不會影響數據表中記錄的實際存儲順序。在一個表中最多可創建249個非聚集索引。
有些表包含多個索引。例如,上例中的索引1、2,還可以按學生姓名屬性創建索引3,因為這是查找學生信息的最常用的方法。對於非聚集索引也是如此。可以為在表中查找數據時常用的每個列創建一個非聚集索引。
由於非聚集索引使用索引頁存儲,因此它比聚集索引需要較少的存儲空間,但檢索效率比聚集索引低。但由於一個表只能創建一個聚集索引,當用戶需要建立多個索引時,就需要使用非聚集索引了。
⑨ SQL 在表中建立索引的作用
樓上說的很清楚。我再舉個例子。
比如,表,usersinfo,有一列是
姓名
列。
建立索引前,如果要搜索,姓名
叫張三的人,
則需要對整個表進行掃描。
對
姓名列建立索引後,再搜索,則只需要掃描索引
--就像一本書的目錄。