You are viewing the archived documentation of TiDB, which no longer receives updates.View latest LTS version docs

TiDB Features

This document lists the features supported in different TiDB versions, including Long-Term Support (LTS) versions and Development Milestone Release (DMR) versions after the latest LTS version.

You can try out TiDB features on TiDB Playground.

Data types, functions, and operators

Data types, functions, and operators7.47.37.27.16.56.15.45.35.25.15.04.0
Numeric typesYYYYYYYYYYYY
Date and time typesYYYYYYYYYYYY
String typesYYYYYYYYYYYY
JSON typeYYYYYEEEEEEE
Control flow functionsYYYYYYYYYYYY
String functionsYYYYYYYYYYYY
Numeric functions and operatorsYYYYYYYYYYYY
Date and time functionsYYYYYYYYYYYY
Bit functions and operatorsYYYYYYYYYYYY
Cast functions and operatorsYYYYYYYYYYYY
Encryption and compression functionsYYYYYYYYYYYY
Information functionsYYYYYYYYYYYY
JSON functionsYYYYYEEEEEEE
Aggregation functionsYYYYYYYYYYYY
Window functionsYYYYYYYYYYYY
Miscellaneous functionsYYYYYYYYYYYY
OperatorsYYYYYYYYYYYY
Character sets and collations 1YYYYYYYYYYYY
User-level lockYYYYYYNNNNNN

Indexing and constraints

SQL statements

SQL statements 37.47.37.27.16.56.15.45.35.25.15.04.0
Basic SELECT, INSERT, UPDATE, DELETE, REPLACEYYYYYYYYYYYY
INSERT ON DUPLICATE KEY UPDATEYYYYYYYYYYYY
LOAD DATA INFILEYYYYYYYYYYYY
SELECT INTO OUTFILEYYYYYYYYYYYY
INNER JOIN, LEFT|RIGHT [OUTER] JOINYYYYYYYYYYYY
UNION, UNION ALLYYYYYYYYYYYY
EXCEPT and INTERSECT operatorsYYYYYYYYYYYN
GROUP BY, ORDER BYYYYYYYYYYYYY
Window FunctionsYYYYYYYYYYYY
Common Table Expressions (CTE)YYYYYYYYYYNN
START TRANSACTION, COMMIT, ROLLBACKYYYYYYYYYYYY
EXPLAINYYYYYYYYYYYY
EXPLAIN ANALYZEYYYYYYYYYYYY
User-defined variablesEEEEEEEEEEEE
BATCH [ON COLUMN] LIMIT INTEGER DELETEYYYYYYNNNNNN
BATCH [ON COLUMN] LIMIT INTEGER INSERT/UPDATE/REPLACEYYYYYNNNNNNN
ALTER TABLE ... COMPACTYYYYYENNNNNN
Table LockEEEEEEEEEEEE
TiFlash Query Result MaterializationYYYYENNNNNNN

Advanced SQL features

Data definition language (DDL)

Data definition language (DDL)7.47.37.27.16.56.15.45.35.25.15.04.0
Basic CREATE, DROP, ALTER, RENAME, TRUNCATEYYYYYYYYYYYY
Generated columnsYYYYEEEEEEEE
ViewsYYYYYYYYYYYY
SequencesYYYYYYYYYYYY
Auto incrementYYYYY4YYYYYYY
Auto randomYYYYYYYYYYYY
TTL (Time to Live)YYYYENNNNNNN
DDL algorithm assertionsYYYYYYYYYYYY
Multi-schema change: add columnsYYYYYEEEEEEE
Change column typeYYYYYYYYYYNN
Temporary tablesYYYYYYYYNNNN
Concurrent DDL statementsYYYYYNNNNNNN
Acceleration of ADD INDEX and CREATE INDEXYYYYYNNNNNNN
Metadata lockYYYYYNNNNNNN
FLASHBACK CLUSTER TO TIMESTAMPYYYYYNNNNNNN
Pause/Resume DDLEEENNNNNNNNN

Transactions

Transactions7.47.37.27.16.56.15.45.35.25.15.04.0
Async commitYYYYYYYYYYYN
1PCYYYYYYYYYYYN
Large transactions (10GB)YYYYYYYYYYYY
Pessimistic transactionsYYYYYYYYYYYY
Optimistic transactionsYYYYYYYYYYYY
Repeatable-read isolation (snapshot isolation)YYYYYYYYYYYY
Read-committed isolationYYYYYYYYYYYY

Partitioning

Statistics

Statistics7.47.37.27.16.56.16.05.45.35.25.15.0
CMSketchDisabled by defaultDisabled by defaultDisabled by defaultDisabled by defaultDisabled by defaultDisabled by defaultDisabled by defaultDisabled by defaultDisabled by defaultYYY
HistogramsYYYYYYYYYYYY
Extended statisticsEEEEEEEEEEEE
Statistics feedbackNNNNNDeprecatedDeprecatedDeprecatedEEEE
Automatically update statisticsYYYYYYYYYYYY
Fast AnalyzeEEEEEEEEEEEE
Dynamic pruningYYYYYYEEEEEN
Collect statistics for PREDICATE COLUMNSEEEEEEEENNNN
Control the memory quota for collecting statisticsEEEEEENNNNNN
Randomly sample about 10000 rows of data to quickly build statisticsEEEEEEEEEEEE
Lock statisticsYEEEENNNNNNN
Lightweight statistics initializationYYYENNNNNNNN
Show the progress of collecting statisticsYYNNNNNNNNNN

Security

Data import and export

Data import and export7.47.37.27.16.56.15.45.35.25.15.04.0
Fast import using TiDB LightningYYYYYYYYYYYY
Fast import using the IMPORT INTO statementEEENNNNNNNNN
mydumper logical dumperDeprecatedDeprecatedDeprecatedDeprecatedDeprecatedDeprecatedDeprecatedDeprecatedDeprecatedDeprecatedDeprecatedDeprecated
Dumpling logical dumperYYYYYYYYYYYY
Transactional LOAD DATA 5YYYYYYYYYYYN 6
Database migration toolkit (DM)YYYYYYYYYYYY
TiDB BinlogYYYYYYYYYYYY
Change data capture (CDC)YYYYYYYYYYYY
Stream data to Amazon S3, GCS, Azure Blob Storage, and NFS through TiCDCYYYYENNNNNNN
TiCDC supports bidirectional replication between two TiDB clustersYYYYYNNNNNNN
TiCDC OpenAPI v2YYYYNNNNNNNN

Management, observability, and tools


  1. TiDB incorrectly treats latin1 as a subset of utf8. See TiDB #18955 for more details.
  2. Starting from v6.5.0, the expression indexes created on the functions listed by the tidb_allow_function_for_expression_index system variable have been tested and can be used in production environments, and more functions will be supported in the future releases. For functions not listed by this variable, the corresponding expression indexes are not recommended for use in production environments. See expression indexes for details.
  3. See Statement Reference for a full list of SQL statements supported.
  4. Starting from v6.4.0, TiDB supports high-performance and globally monotonic AUTO_INCREMENT columns
  5. For TiDB v4.0, the LOAD DATA transaction does not guarantee atomicity.
  6. Starting from TiDB v7.0.0, the new parameter FIELDS DEFINED NULL BY and support for importing data from S3 and GCS are experimental features.