全部產品
Search
文件中心

Tablestore:SQL查詢

更新時間:Jun 09, 2026

Table Store相容 MySQL 文法,為寬表和時序資料提供統一的 SQL 提供者。支援 DDL、DQL、DML 操作,並可通過多元索引實現全文檢索索引、向量檢索等進階查詢。

工作原理

Table Store在 NoSQL 結構化儲存之上提供 SQL 引擎能力。通過 CREATE TABLE 為已有資料表建立映射關係後,即可使用 SQL 訪問資料。系統根據 SQL 陳述式自動選擇合適的索引加速查詢。

說明

與傳統關係型資料庫不同,Table Store的 CREATE TABLE 不建立物理表,而是為已有的資料表或多元索引建立 SQL 訪問映射。DROP MAPPING TABLE 只刪除映射關係,不影響底層資料。

SQL 引擎概念與Table Store概念的對應關係如下。

資料庫概念

Table Store概念

描述

資料庫

執行個體

按資料結構組織、儲存和管理資料的倉庫,可包含一個或多個表。

映射表

已有資料表的 SQL 訪問映射。通過 CREATE TABLE 建立,由行和列組成。

索引

二級索引、多元索引

為加速資料查詢而建立的儲存結構。SQL 引擎自動選擇合適的索引加速查詢。

說明

目前支援 SQL 查詢功能的地區包括華東1(杭州)、華東2(上海)、華北2(北京)、華北3(張家口)、華北6(烏蘭察布)、華南1(深圳)、西南1(成都)、中國香港、日本(東京)、新加坡、馬來西亞(吉隆坡)、印尼(雅加達)、德國(法蘭克福)、英國(倫敦)、美國(矽谷)、美國(維吉尼亞)、沙特(利雅得)

支援的 SQL 陳述式

SQL 引擎支援以下語句。

分類

SQL 陳述式

描述

DDL 操作

CREATE TABLE

為資料表或多元索引建立 SQL 映射關係。

ALTER TABLE

添加或刪除屬性列。

DROP MAPPING TABLE

刪除映射關係(不影響底層資料)。

SHOW TABLES

列出當前執行個體中的映射表。

SHOW INDEX

查詢索引描述資訊。

DESCRIBE

查看錶結構資訊。

DROP TABLE

刪除資料表。暫不支援

DQL 操作

SELECT

查詢資料,支援條件過濾、統計彙總(MIN / MAX / SUM / AVG / COUNT)、GROUP BY、ORDER BY、LIMIT 等。

SELECT JOIN

跨表 JOIN 資料查詢,支援 INNER / LEFT / RIGHT / CROSS JOIN。

DML 操作

INSERT / UPDATE / DELETE

寫入、更新和刪除資料。

多元索引操作

全文檢索索引 / 數組 / 嵌套 / 向量 / JSON

通過多元索引實現全文檢索索引、數組查詢、巢狀查詢、向量檢索、JSON 查詢等進階功能。

其他

CREATE INDEX

建立索引。暫不支援

其他功能特性:

使用方式

可通過以下方式執行 SQL 查詢。

使用方式

適用情境

參考文檔

控制台

適用於小規模資料查詢和驗證,無需編寫代碼。

通過控制台使用SQL查詢

命令列工具

適用於開發調試和自動化指令碼。

通過命令列工具使用SQL查詢

JDBC 直連

Java 應用直接通過標準 JDBC 介面訪問。

通過JDBC直連使用SQL查詢

Hibernate

Java ORM 框架組成,適用於已有 Hibernate 專案。

通過Hibernate使用SQL查詢

MyBatis

Java 資料持久層框架組成,適用於已有 MyBatis 專案。

通過MyBatis使用SQL查詢

Go 語言驅動

Go 應用通過 database/sql 標準介面訪問。

通過Go語言驅動使用SQL查詢

SDK

適用於應用程式中通過 SDK 編程執行 SQL 操作。

通過Java SDK使用SQL查詢

通過Python SDK使用SQL查詢

通過Go SDK使用SQL查詢

通過Node.js SDK使用SQL查詢

通過PHP SDK使用SQL查詢

通過.NET SDK使用SQL查詢

SQL 操作符

Table Store SQL 支援以下四類操作符。

算術運算子

可用於 SELECT 或 WHERE 子句中進行數值計算。

運算子

名稱

說明

A+B

加法

返回 A+B 的結果。

A-B

減法

返回 A-B 的結果。

A*B

乘法

返回 A*B 的結果。

A/B 或 A DIV B

除法

返回 A/B 的結果。

A%B 或 A MOD B

取餘

返回 A/B 後取餘數的結果。

關係運算子

判斷是否符合指定條件。TRUE 返回 1,FALSE 返回 0。可用於 WHERE 子句。

運算子

名稱

說明

A:=B

賦值

將 B 的值賦給 A。

A=B

等於

A 等於 B 時返回 1,否則返回 0。

A!=B 或 A<>B

不等於

A 不等於 B 時返回 1,否則返回 0。

A>B

大於

A 大於 B 時返回 1,否則返回 0。

A<B

小於

A 小於 B 時返回 1,否則返回 0。

A>=B

大於等於

A 大於等於 B 時返回 1,否則返回 0。

A<=B

小於等於

A 小於等於 B 時返回 1,否則返回 0。

IN (A,B...)

限定多個值

列值與任意一個值相同時返回 1,否則返回 0。

BETWEEN A AND B

值在區間內

值 >= A 且 <= B 時返回 1,否則返回 0。

NOT BETWEEN A AND B

值不在區間內

值 > B 或 < A 時返回 1,否則返回 0。

A LIKE B

模式比對

字串匹配。_ 匹配一個字元,% 匹配任意個字元。

A NOT LIKE B

不符合模式比對

字串不匹配。_ 匹配一個字元,% 匹配任意個字元。

邏輯運算子

判斷運算式真假。TRUE 返回 1,FALSE 返回 0。可用於 WHERE 子句組成複雜條件。

運算子

名稱

說明

A AND B 或 A&&B

邏輯與

A 和 B 均為 TRUE 時返回 1,否則返回 0。

A OR B

邏輯或

A 和 B 中至少一個為 TRUE 時返回 1,否則返回 0。

A XOR B

邏輯異或

A 和 B 不同時返回 1,否則返回 0。

NOT A 或 !A

邏輯非

A 為 FALSE 時返回 1,否則返回 0。

位元運算符

用於對位元進行計算。運算元轉為二進位後進行位元運算,結果轉回十進位。

運算子

名稱

說明

A&B

按位與

返回 A 和 B 按位與運算的結果。

A|B

按位或

返回 A 和 B 按位或運算的結果。

A^B

按位異或

返回 A 和 B 按位異或運算的結果。

~A

按位非

返回 A 按位取反的結果。

資料類型映射

SQL 中所用欄位對應於表中同名欄位,兩者的資料類型必須相匹配。

重要
  • SQL 中主鍵列使用 VARBINARY 和 VARCHAR 時,建議最大長度設定為 1024。

  • SQL 中 BIGINT 和資料表中 Integer 均為 64 位元整型。

  • SQL 中只有 BIGINT、VARBINARY 和 VARCHAR 支援作為主鍵列資料類型。

SQL 資料類型

資料表資料類型

多元索引資料類型

BIGINT

Integer

Integer

VARBINARY(主鍵)/ MEDIUMBLOB(屬性列)

Binary

Binary

VARCHAR(主鍵)/ MEDIUMTEXT(屬性列)

String

Keyword

Text

DOUBLE

Double

Double

BOOL

Boolean

Boolean

配額與限制

  • SQL 查詢適用於寬表模型時序模型

  • 不支援事務功能。

  • SQL 陳述式中的關鍵字為保留字,不區分大小寫。命名表或列時如需使用關鍵字,用 `` 符號轉義。完整列表參見保留字與關鍵字

  • SQL 引擎對列名大小寫不敏感。SELECT Aa FROM tSELECT aa FROM t 等價。由於Table Store原始表的列名大小寫敏感,SQL 會將列名統一轉為小寫匹配,因此原始表中不能同時存在僅大小寫不同的列名。

其他限制參見SQL查詢使用限制

計費說明

SQL 查詢本身不產生額外費用,查詢過程中的表掃描、索引查詢等操作按原計費規則收費。詳細計費規則參見SQL查詢計量計費