📅  最后修改于: 2023-12-03 15:00:31.396000             🧑  作者: Mango
Azure DocumentDB 是一种灵活的 NoSQL 数据库服务,支持多种数据模型和操作。本文将为程序员介绍 DocumentDB 支持的数据类型及其用法。
DocumentDB 支持标准的 JSON 数据类型,包括:
您可以在 DocumentDB 中使用这些基本数据类型来组织和存储数据。例如:
{
"id": "d6df19c1-ccc4-4b36-8284-4cdf44ad197b",
"name": "Alice",
"age": 30,
"isMarried": true,
"hobbies": ["reading", "painting"],
"address": {"street": "123 Main St", "city": "Seattle", "state": "WA"}
}
为了支持更复杂的数据模型,DocumentDB 还提供了以下扩展数据类型:
可以使用字符串表示日期时间,格式遵循 ISO 8601 标准,例如 "2021-01-01T12:00:00Z" 表示 UTC 时间的 2021 年 1 月 1 日 12:00:00。另外,您还可以使用 Date 类型来表示日期时间。例如:
{
"id": "d6df19c1-ccc4-4b36-8284-4cdf44ad197b",
"name": "Bob",
"birthday": "1990-01-01T00:00:00Z",
"hireDate": {"$date": "2010-01-01T00:00:00Z"}
}
可以使用 Base64 编码的字符串来表示二进制数据。例如:
{
"id": "d6df19c1-ccc4-4b36-8284-4cdf44ad197b",
"name": "Charlie",
"picture": {"$binary": "iVBORw0KGgoAAAANSUhEUgAAABkAAAAZCAYAAADE6YVjAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEwAACxMBAJqcGAAAArZJREFUWIXtlrsxQ2Ecx/EvnzBixSiWCEiCYSMh8Em/b0zjKrgN0rkkzNFlZaWlRWjowv+CRlRk/2QVFrWU6OQvV7XU6NV1m6clJ82f089CCO5O5mq5m5ka8zyy745xvca+tleFOYo9dzaAaI8twYZoOZQJjE/sAJs1HWvgAakynT4gA14mvF9HJQhm8G+ZFMnLZab/D4nY3BjqMHakgTnc/Yx0H/QS9bXB2QZgOdFBb0N/gi4C0sYsNlwcbL0zbuOlxOQLcXzGdMAmZMCOI+2mWWmucA67wG1KjyWkj6vC7lUzOK6U1/r+fZ1amBvD7Md+m5di5Us5YMNoWg0xKx7r9X3qgzTaYNcENZjKv1hwugRfYFATPskW8Vv2F6ciO7RaUzPH6Zm8VvDm+SE5fV35UXue5OUy8fKx0nr9r/BBKhGq3Hsw37hd0CjNmsN+aV23QDM67/aT8piKLplLzpuR9+aPQDzPfZosze+bMn4nSayAhIsIVrbY1ZW+iVuHxGx9Xz53PPBbyI8eNbZvAdoBGgE+hRW1GEVIwB+sM8UFMxMpX9Oig98f/st+Zskwt8BvOchOgMuBRXT/fUEbTtTpgzVsHFMF9av0g967nvEfyZlLkXLJ0PPDuTCpKsYmpwowdaV+DvFyrG1BzCNO3J+KcAorvcfrTwRdajhQAAAAASUVORK5CYII="}
}
可以使用点号将 JSON 对象的属性嵌套起来,例如 "address.city"。这样可以在查询时方便地访问嵌套的属性。
DocumentDB 支持 SQL 查询语言,可以使用 SELECT、FROM、WHERE、ORDER BY 等关键字来查询数据。示例:
SELECT * FROM c WHERE c.name = "Alice"
本文介绍了 DocumentDB 支持的基本数据类型和扩展数据类型,可以用来组织和存储各种类型的数据。使用 SQL 查询语言,可以轻松地查询和过滤数据。