TiDB SQL開發基礎——建立索引
TiDB支援索引,包括主鍵索引、唯一索引、單欄位索引和多欄位組合索引。對於瞭解傳統關係型資料庫的開發人員和DBA來說可以很方便的繼承他們已經很熟悉的索引知識來優化查詢。本文將向大家介紹TiDB中索引使用的基本知識。
1. 建立索引
(1) 主鍵索引
在TiDB中,表的主鍵與傳統RDBMS一樣,也是自動建立一個主鍵索引。主鍵索引可以是單欄位,也可以是多欄位索引。
(2) 唯一索引
例如:
CREATE UNIQUE INDEX idx_name ON customer (name);
或者:
ALTER TABLE customer ADD INDEX idx_name (name);
(3) 非唯一索引
例如:
CREATE INDEX idx_birthday ON customer (birthday);
或者:
ALTER TABLE customer ADD INDEX idx_birthday (birthday);
多欄位組合索引:
CREATE INDEX idx_name_birthday ON customer (name, birthday);
2. 查看錶上的索引
在TiDB中,可以使用SHOW INDEX 語句查看錶內所有索引。例如:
SHOW INDEX FROM customer ;
3. 刪除表上的索引
使用ALTER TABLE 或DROP INDEX 語句來刪除索引。與CREATE INDEX 語句類似,DROP INDEX 也可以嵌入ALTER TABLE 語句。例如:
DROP INDEX idx_name ON customer;
ALTER TABLE customer DROP INDEX idx_name;
相關推薦
TiDB SQL開發基礎——建立索引
TiDB支援索引,包括主鍵索引、唯一索引、單欄位索引和多欄位組合索引。對於瞭解傳統關係型資料庫的開發人員和DBA來說可以很方便的繼承他們已經很熟悉的索引知識來優化查詢。本文將向大家介紹TiDB中索引使用的基本知識。 1. 建立索引 (1
CockroachDB SQL開發基礎——建立索引
索引是關係型資料庫中的一種非常重要的物件,通過使用索引查詢資料、避免全表掃描而提升資料庫查詢的效能。CockroachDB(簡稱CRDB)支援較為豐富的索引功能,包括“標準索引(Standard index)”和“倒排索引(Inverted index)”。
TiDB SQL開發基礎——增刪改查
在前面的幾篇有關應用開發方面的博文介紹了在TiDB中如何建立資料庫、建立表和索引等內容。在這篇文章中,將向大家介紹基本的SQL操縱語句,這些在應用開發中訪問資料庫最頻繁使用的。 1. 插入資料 在TiDB中,可
CockroachDB SQL開發基礎 ——建立資料庫、表和檢視
CockroachDB相容PostgreSQL協議和PostgreSQL語法,它的目標是提供對ANSI SQL標準的相容,在相容標準的前提下進行了一定程度的擴充套件。從客戶端的角度看,我們可以把CockroachDB當作一個儲存容量和計算能力可以
CockroachDB SQL開發基礎 ——建立表的更多有趣示例 (2)
在上一篇文章中,介紹了CockroachDB中建立表的更多一些示例,包括:“主鍵”、“外來鍵”、“Check約束”這些SQL標準中的特性用法;還結合示例介紹瞭如何建立帶有計算列和能夠對映KV儲存表的方法。本文將介紹CockroachDB中建立表時的另外一些示例
CockroachDB SQL開發基礎 ——建立表的更多有趣示例 (1)
上一篇文章介紹了CockroachDB中建立資料庫和表的基本方法和示例。在這些示例中使用的CRDB語句的語法也能夠用於其它的資料庫(比如MySQL或者相容MySQL的PingCap的TiDB)。 CockroachDB在SQL標準的遵從和實現度方面,在開源Ne
CockroachDB SQL開發基礎 ——增刪改查 (1)
在先前的幾篇有關應用開發基礎的文章中介紹了CockroachDB中如何建立資料庫、建立表(以及建立表的更多用法示例)和索引等內容。在這篇文章中,將向大家介紹基本的SQL操縱語句(DML語句),這些是應用開發人員在開發資料庫訪問邏輯時最頻繁使用的。Cockrao
CockroachDB SQL開發基礎 ——增刪改查 (2)
在上一篇文章中介紹了應用開發人員在開發資料庫訪問邏輯時最頻繁使用DML語句的用法和示例,包括:INSERT、UPDATE、DELETE和SELECT等語句。這篇文章將向大家介紹UPSERT、WITH等語句的用法。 1. UPSERT語句
sql server 無法建立索引 因為物件名稱和索引名稱重複
需求分析:如下圖所示,給T_DD_OP1200_Final表的Id欄位新增主鍵,儲存時彈出 “T_DD_OP1200_Final”表- 無法建立索引“PK_T_DD_OP1200_Final”。 因為發現物件名稱 'dbo.T_DD_OP1200_Final' 和索引名稱 'PK_T_DD_OP1
基於lucene的案例開發:建立索引
從這篇部落格開始,不論是API介紹還是後面的案例開發,都是基於 lucene4.3.1 這個版本,Lucene4.3.1 下載請點選這裡, Lucene其他版本下載請點選這裡,Lucene4.3.1官方API文件請點選這裡。 建立索引demo 在
Oracle PL/SQL開發基礎(第三十四彈:RAISE_APPLICATION_ERROR)
RAISE_APPLICATION_ERROR在子程式內部使用時,能從儲存子程式中丟擲自定義的錯誤訊息。這樣就能將錯誤報告給應用程式而避免範圍未捕獲異常。 語法如下: RAISE_APPLICATI
SQL Server:建立索引檢視
檢視也稱為虛擬表,這是因為由檢視返回的結果集其一般格式與由列和行組成的表相似,並且,在 SQL 語句中引用檢視的方式也與引用表的方式相同。標準檢視的結果集不是永久地儲存在資料庫中。查詢每次引用檢視時,Microsoft® SQL Server™ 2000 會動態地將生成檢視結果集所需的邏輯合併到從基表資料生成
建立索引優化sql
字段 隨著 創建 之間 str 動態 不能 所有 分解 2017/11/21 發布 一、索引簡介 在關系數據庫中,索引是一種單獨的、物理的對數據庫表中一列或多列的值進行排序的一種存儲結構,它是某個表中一列或若幹列值的集合和相應的指向表中物理標識這些值的數據頁的邏輯指針清
mysql 開發基礎系列15 索引的設計和使用
hash索引 drop myisam mar 至少 不同類 不同 執行 例如 一.概述 所有mysql 列類型都可以被索引,是提高select查詢性能的最佳方法。 根據存儲引擎可以定義每個表的最大索引數和最大索引長度,每種引擎對每個表至少支持16個索引,總索引長度至少為
mysql 開發基礎系列22 SQL Model
block ESS 只需要 角色 res 行遷移 常用 開發 http 一.概述 與其它數據庫不同,mysql 可以運行不同的sql model 下, sql model 定義了mysql應用支持的sql語法,數據校驗等,這樣更容易在不同的環境中使用mysql。 sq
sql-哪些情況需要建立索引
主鍵自動建立唯一索引 頻繁作為查詢條件的欄位應該建立索引 查詢中與其它表關聯的欄位,外來鍵關聯建立索引 頻繁更新的欄位不適合建索引(每次更新不單單是更新了記錄還會更新索引) where條件中用不到的欄位不建索引 單鍵/組合索引(在高併發下建議建組合索引)
【學習記錄】第一章 資料庫設計-《SQL Server資料庫設計和開發基礎篇視訊課程》
一、課程筆記 1.1 軟體開發週期 (1)需求分析階段 分析客戶的業務和資料處理需求。 (2)概要設計階段 設計資料庫的E-R模型圖,確認需求資訊的正確和完整。 /* E-R圖:實體-關係圖(Entity Relationship Diagram),提供了
oracle資料庫建立索引以及簡單優化sql語句
Oracle 建立索引及SQL優化 資料庫索引: 索引有單列索引 複合索引之說 如何某表的某個欄位有主鍵約束和唯一性約束,則Oracle 則會自動在相應的約束列上建議唯一索引。資料庫索引主要進行提高訪問速度。 建設原則: 1、索引應該經常建在Where 子句經常用到的列上。如
SQL Server資料庫開發(4.索引和檢視)
一、索引 定義:是資料表中資料和相應儲存位置的列表。 作用:可以提高在表或檢視中查詢資料的速度。 1.分類:聚集索引,非聚集索引 聚集索引:指表中資料行的物理儲存順序與索引順序完全相同。 非聚集索引:不該表表中資料行的物理儲存位置,資料與索引分開儲存,通過索引指向的地址與表中的資
瞭解Sql Server的執行計劃 看懂SqlServer查詢計劃 程式設計師眼中的 SQL Server-執行計劃教會我如何建立索引?
閱讀目錄 如何啟動執行計劃 執行計劃結果要看什麼 Sql Server的五種查詢方式 檢視更具體的執行過程 參考資料 前一篇總結了Sql Server Profiler,它主要用來監控資料庫,並跟蹤生成的sql語句。但是隻拿到生成的sql語句沒有什麼用