数据类型

更新时间: 2025-08-15 15:41:30

本文介绍了数据表中和多元索引中字段数据类型的映射关系,以及不同字段数据类型支持的附加属性和查询功能。

数据类型映射关系

多元索引的字段值来源于数据表中同名字段的值,两者的数据类型必须相匹配。多元索引字段数据类型与数据表中字段数据类型的匹配关系请参见下表。

重要

表中的类型必须一一对应,否则数据会被当作脏数据丢弃,尤其是Geo-point和Nested拥有各自特定的格式。如果格式不匹配也会被当作脏数据丢弃,这将导致数据在表中能查询到,但是在多元索引中查询不到的情况。

多元索引中字段数据类型

数据表中字段数据类型

描述

Long

Integer

64位长整型。

Double

Double

64位双精度浮点数。

Boolean

Boolean

布尔值。

Keyword

String

不可分词字符串

FuzzyKeyword

String

支持高性能模糊查询的字符串

Text

String

分词字符串或文本。更多信息,请参见字符串类型

Date

Integer、String

日期时间类型,支持自定义各种格式日期数据。

Geo-point

String

位置点坐标信息,格式为纬度,经度,纬度在前,经度在后,且纬度范围为[-90,+90],经度范围为[-180,+180]。例如35.8,-45.91

Vector

String

向量类型,格式为Float32数组的字符串,数组长度与该字段的维度相等。例如向量字符串[1, 5.1, 4.7, 0.08 ]的维度为4。

Nested

String

嵌套类型,例如[{"a": 1}, {"a": 3}]

字段属性支持情况

多元索引字段还支持数组、虚拟列、高亮显示等附加属性。不同数据类型支持的附加属性不同,下表列出了不同附加属性适用的数据类型及使用说明。

属性

适用的数据类型

说明

数组

Long、Double、Boolean、Keyword、FuzzyKeyword、Text、Date、Geo-point

如需存储一系列相同类型的数据,请将字段设置为数组类型

在写入数据时,必须按照JSON数组格式写入,例如["a","b","c"]

Nested类型和Vector类型本身就是数组,无需设置。

说明

Array和Nested的区别请参见Nested和Array对比

虚拟列

Long、Double、Keyword、FuzzyKeyword、Text、Date、Geo-point、Vector

如需在不改变表格存储的存储结构及数据的情况下,实现新字段新类型的查询,请将字段设置为虚拟列

日期格式

Date

使用日期类型时,需指定日期的格式。

分词

Text

如需实现全文检索,请为字段设置分词

摘要与高亮

Text

如需在全文检索场景中高亮显示命中的查询词,请为字段开启摘要与高亮功能。

向量配置

Vector

使用向量字段时,需指定向量的度量算法和维度。

查询功能支持情况

各数据类型可用于的查询功能请参见下表。

说明
  • “✓”表示支持,“×”表示不支持。

  • 全匹配查询功能无需设置字段。

查询功能

Long

Double

Boolean

Keyword

FuzzyKeyword

Text

Date

Geo-point

Nested

Vector

精确查询

×

×

×

×

×

多词精确查询

×

×

×

×

×

范围查询

×

×

×

×

×

列存在性查询

通配符查询

×

×

×

×

×

×

×

×

前缀查询

×

×

×

×

×

×

×

×

后缀查询

×

×

×

×

×

×

×

×

×

基于分词的通配符查询

×

×

×

×

×

×

×

×

×

地理位置查询

×

×

×

×

×

×

×

×

×

嵌套类型查询

×

×

×

×

×

×

×

×

×

折叠(去重)

×

×

×

×

×

×

×

组合查询

匹配查询

×

×

×

×

×

短语匹配查询

×

×

×

×

×

向量检索

×

×

×

×

×

×

×

×

×

上一篇: 动态修改schema 下一篇: 字符串类型
阿里云首页 表格存储 相关技术圈