diff --git a/documentation20/webdocs/markdowndocs/TAOS SQL-ch.md b/documentation20/webdocs/markdowndocs/TAOS SQL-ch.md index 3333bbc450d2c8883a45c4879bcbfe951003967b..0da28836056ee8e3b50bbf96499a6a3de1d205a4 100644 --- a/documentation20/webdocs/markdowndocs/TAOS SQL-ch.md +++ b/documentation20/webdocs/markdowndocs/TAOS SQL-ch.md @@ -213,16 +213,19 @@ TDengine缺省的时间戳是毫秒精度,但通过修改配置参数enableMic 如果表是通过[超级表](../super-table/)创建,更改表结构的操作只能对超级表进行。同时针对超级表的结构更改对所有通过该结构创建的表生效。对于不是通过超级表创建的表,可以直接修改表结构 ## 超级表STable管理 + +注意:在 2.0.15 以前的版本中,并不支持 STABLE 保留字,而是写作 TABLE。也即,在本节后文的指令说明中,CREATE、DROP、ALTER 三个指令在老版本中保留字需写作 TABLE 而不是 STABLE。 + - **创建超级表** ```mysql - CREATE TABLE [IF NOT EXISTS] stb_name (timestamp_field_name TIMESTAMP, field1_name data_type1 [, field2_name data_type2 ...]) TAGS (tag1_name tag_type1, tag2_name tag_type2 [, tag3_name tag_type3]); + CREATE STABLE [IF NOT EXISTS] stb_name (timestamp_field_name TIMESTAMP, field1_name data_type1 [, field2_name data_type2 ...]) TAGS (tag1_name tag_type1, tag2_name tag_type2 [, tag3_name tag_type3]); ``` - 创建STable, 与创建表的SQL语法相似,但需指定TAGS字段的名称和类型 + 创建 STable,与创建表的 SQL 语法相似,但需指定 TAGS 字段的名称和类型 说明: - 1) TAGS 列的数据类型不能是timestamp类型; + 1) TAGS 列的数据类型不能是 timestamp 类型; 2) TAGS 列名不能与其他列名相同; @@ -233,16 +236,16 @@ TDengine缺省的时间戳是毫秒精度,但通过修改配置参数enableMic - **删除超级表** ```mysql - DROP TABLE [IF EXISTS] stb_name; + DROP STABLE [IF EXISTS] stb_name; ``` - 删除STable会自动删除通过STable创建的子表。 + 删除 STable 会自动删除通过 STable 创建的子表。 - **显示当前数据库下的所有超级表信息** ```mysql SHOW STABLES [LIKE tb_name_wildcar]; ``` - 查看数据库内全部STable,及其相关信息,包括STable的名称、创建时间、列数量、标签(TAG)数量、通过该STable建表的数量。 + 查看数据库内全部 STable,及其相关信息,包括 STable 的名称、创建时间、列数量、标签(TAG)数量、通过该 STable 建表的数量。 - **获取超级表的结构信息** @@ -253,43 +256,43 @@ TDengine缺省的时间戳是毫秒精度,但通过修改配置参数enableMic - **超级表增加列** ```mysql - ALTER TABLE stb_name ADD COLUMN field_name data_type; + ALTER STABLE stb_name ADD COLUMN field_name data_type; ``` - **超级表删除列** ```mysql - ALTER TABLE stb_name DROP COLUMN field_name; + ALTER STABLE stb_name DROP COLUMN field_name; ``` ## 超级表 STable 中 TAG 管理 - **添加标签** ```mysql - ALTER TABLE stb_name ADD TAG new_tag_name tag_type; + ALTER STABLE stb_name ADD TAG new_tag_name tag_type; ``` - 为STable增加一个新的标签,并指定新标签的类型。标签总数不能超过128个,总长度不超过16k个字符。 + 为 STable 增加一个新的标签,并指定新标签的类型。标签总数不能超过 128 个,总长度不超过 16k 个字符。 - **删除标签** ```mysql - ALTER TABLE stb_name DROP TAG tag_name; + ALTER STABLE stb_name DROP TAG tag_name; ``` 删除超级表的一个标签,从超级表删除某个标签后,该超级表下的所有子表也会自动删除该标签。 - **修改标签名** ```mysql - ALTER TABLE stb_name CHANGE TAG old_tag_name new_tag_name; + ALTER STABLE stb_name CHANGE TAG old_tag_name new_tag_name; ``` 修改超级表的标签名,从超级表修改某个标签名后,该超级表下的所有子表也会自动更新该标签名。 - **修改子表标签值** ```mysql - ALTER TABLE tb_name SET TAG tag_name=new_tag_value; + ALTER STABLE tb_name SET TAG tag_name=new_tag_value; ``` - 说明:除了更新标签的值的操作是针对子表进行,其他所有的标签操作(添加标签、删除标签等)均只能作用于STable,不能对单个子表操作。对STable添加标签以后,依托于该STable建立的所有表将自动增加了一个标签,所有新增标签的默认值都是NULL。 + 说明:除了更新标签的值的操作是针对子表进行,其他所有的标签操作(添加标签、删除标签等)均只能作用于 STable,不能对单个子表操作。对 STable 添加标签以后,依托于该 STable 建立的所有表将自动增加了一个标签,所有新增标签的默认值都是 NULL。 ## 数据写入 @@ -467,6 +470,17 @@ Query OK, 2 row(s) in set (0.003112s) 注意:普通表的通配符 * 中并不包含 _标签列_。 +##### 获取标签列的去重取值 + +从 2.0.15 版本开始,支持在超级表查询标签列时,指定 distinct 关键字,这样将返回指定标签列的所有不重复取值。 +```mysql +SELECT DISTINCT tag_name FROM stb_name; +``` + +注意:目前 distinct 关键字只支持对超级表的标签列进行去重,而不能用于普通列。 + + + #### 结果集列名 ```SELECT```子句中,如果不指定返回结果集合的列名,结果集列名称默认使用```SELECT```子句中的表达式名称作为列名称。此外,用户可使用```AS```来重命名返回结果集合中列的名称。例如: diff --git a/documentation20/webdocs/markdowndocs/administrator-ch.md b/documentation20/webdocs/markdowndocs/administrator-ch.md index a343f7e97079566208b707b36e46b219f26772e2..7c8344d9ca5cb2c9738c9b308406a6c96f871db1 100644 --- a/documentation20/webdocs/markdowndocs/administrator-ch.md +++ b/documentation20/webdocs/markdowndocs/administrator-ch.md @@ -12,7 +12,7 @@ Memory Size = maxVgroupsPerDb * (blocks * cache + 10Mb) + numOfTables * (tagSizePerTable + 0.5Kb) ``` -示例:假设是4核机器,cache是缺省大小16M, blocks是缺省值6,假设有10万张表,标签总长度是256字节,则总的内存需求为:4\*(16\*6+10) + 100000*(0.25+0.5)/1000 = 499M。 +示例:假设是4核机器,cache是缺省大小16M, blocks是缺省值6,假设有10万张表,标签总长度是256字节,则总的内存需求为:4\*(16\*6+10) + 100000\*(0.25+0.5)/1000 = 499M。 实际运行的系统往往会根据数据特点的不同,将数据存放在不同的DB里。因此做规划时,也需要考虑。 @@ -35,7 +35,7 @@ TDengine相对于通用数据库,有超高的压缩比,在绝大多数场景 Raw DataSize = numOfTables * rowSizePerTable * rowsPerTable ``` -示例:1000万台智能电表,每台电表每15分钟采集一次数据,每次采集的数据128字节,那么一年的原始数据量是:10000000\*128\*24\*60/15*365 = 44.8512T。TDengine大概需要消耗44.851/5=8.97024T空间。 +示例:1000万台智能电表,每台电表每15分钟采集一次数据,每次采集的数据128字节,那么一年的原始数据量是:10000000\*128\*24\*60/15\*365 = 44.8512T。TDengine大概需要消耗44.851/5=8.97024T空间。 用户可以通过参数keep,设置数据在磁盘中的最大保存时长。为进一步减少存储成本,TDengine还提供多级存储,最冷的数据可以存放在最廉价的存储介质上,应用的访问不用做任何调整,只是读取速度降低了。 @@ -181,7 +181,7 @@ taos -C 或 taos --dump-config 客户端的输入的字符均采用操作系统当前默认的编码格式,在Linux系统上多为UTF-8,部分中文系统编码则可能是GB18030或GBK等。在docker环境中默认的编码是POSIX。在中文版Windows系统中,编码则是CP936。客户端需要确保正确设置自己所使用的字符集,即客户端运行的操作系统当前编码字符集,才能保证nchar中的数据正确转换为UCS4-LE编码格式。 - 在 Linux 中 locale 的命名规则为: <语言>_<地区>.<字符集编码> 如:zh_CN.UTF-8,zh代表中文,CN代表大陆地区,UTF-8表示字符集。字符集编码为客户端正确解析本地字符串提供编码转换的说明。Linux系统与 Mac OSX 系统可以通过设置locale来确定系统的字符编码,由于Windows使用的locale中不是POSIX标准的locale格式,因此在Windows下需要采用另一个配置参数charset来指定字符编码。在Linux 系统中也可以使用charset来指定字符编码。 + 在 Linux 中 locale 的命名规则为: <语言>\_<地区>.<字符集编码> 如:zh_CN.UTF-8,zh代表中文,CN代表大陆地区,UTF-8表示字符集。字符集编码为客户端正确解析本地字符串提供编码转换的说明。Linux系统与 Mac OSX 系统可以通过设置locale来确定系统的字符编码,由于Windows使用的locale中不是POSIX标准的locale格式,因此在Windows下需要采用另一个配置参数charset来指定字符编码。在Linux 系统中也可以使用charset来指定字符编码。 - charset @@ -452,39 +452,39 @@ TDengine的所有可执行文件默认存放在 _/usr/local/taos/bin_ 目录下 | 关键字列表 | | | | | | ---------- | ----------- | ------------ | ---------- | --------- | -| ABLOCKS | CONNECTION | GT | MINUS | SHOW | -| ABORT | CONNECTIONS | ID | MNODES | SLASH | -| ACCOUNT | COPY | IF | MODULES | SLIDING | -| ACCOUNTS | COUNT | IGNORE | NCHAR | SMALLINT | -| ADD | CREATE | IMMEDIATE | NE | SPREAD | -| AFTER | CTIME | IMPORT | NONE | STAR | -| ALL | DATABASE | IN | NOT | STATEMENT | -| ALTER | DATABASES | INITIALLY | NOTNULL | STDDEV | -| AND | DAYS | INSERT | NOW | STREAM | -| AS | DEFERRED | INSTEAD | OF | STREAMS | -| ASC | DELIMITERS | INTEGER | OFFSET | STRING | -| ATTACH | DESC | INTERVAL | OR | SUM | -| AVG | DESCRIBE | INTO | ORDER | TABLE | -| BEFORE | DETACH | IP | PASS | TABLES | -| BEGIN | DIFF | IS | PERCENTILE | TAG | -| BETWEEN | DIVIDE | ISNULL | PLUS | TAGS | -| BIGINT | DNODE | JOIN | PRAGMA | TBLOCKS | -| BINARY | DNODES | KEEP | PREV | TBNAME | -| BITAND | DOT | KEY | PRIVILEGE | TIMES | -| BITNOT | DOUBLE | KILL | QUERIES | TIMESTAMP | -| BITOR | DROP | LAST | QUERY | TINYINT | -| BOOL | EACH | LE | RAISE | TOP | -| BOTTOM | END | LEASTSQUARES | REM | TRIGGER | -| BY | EQ | LIKE | REPLACE | UMINUS | -| CACHE | EXISTS | LIMIT | REPLICA | UPLUS | -| CASCADE | EXPLAIN | LINEAR | RESET | USE | -| CHANGE | FAIL | LOCAL | RESTRICT | USER | -| CLOG | FILL | LP | ROW | USERS | -| CLUSTER | FIRST | LSHIFT | ROWS | USING | -| COLON | FLOAT | LT | RP | VALUES | -| COLUMN | FOR | MATCH | RSHIFT | VARIABLE | -| COMMA | FROM | MAX | SCORES | VGROUPS | -| COMP | GE | METRIC | SELECT | VIEW | -| CONCAT | GLOB | METRICS | SEMI | WAVG | -| CONFIGS | GRANTS | MIN | SET | WHERE | -| CONFLICT | GROUP | | | | \ No newline at end of file +| ABLOCKS | CONNECTION | GROUP | MINUS | SLASH | +| ABORT | CONNECTIONS | GT | MNODES | SLIDING | +| ACCOUNT | COPY | ID | MODULES | SMALLINT | +| ACCOUNTS | COUNT | IF | NCHAR | SPREAD | +| ADD | CREATE | IGNORE | NE | STABLE | +| AFTER | CTIME | IMMEDIATE | NONE | STABLES | +| ALL | DATABASE | IMPORT | NOT | STAR | +| ALTER | DATABASES | IN | NOTNULL | STATEMENT | +| AND | DAYS | INITIALLY | NOW | STDDEV | +| AS | DEFERRED | INSERT | OF | STREAM | +| ASC | DELIMITERS | INSTEAD | OFFSET | STREAMS | +| ATTACH | DESC | INTEGER | OR | STRING | +| AVG | DESCRIBE | INTERVAL | ORDER | SUM | +| BEFORE | DETACH | INTO | PASS | TABLE | +| BEGIN | DIFF | IP | PERCENTILE | TABLES | +| BETWEEN | DISTINCT | IS | PLUS | TAG | +| BIGINT | DIVIDE | ISNULL | PRAGMA | TAGS | +| BINARY | DNODE | JOIN | PREV | TBLOCKS | +| BITAND | DNODES | KEEP | PRIVILEGE | TBNAME | +| BITNOT | DOT | KEY | QUERIES | TIMES | +| BITOR | DOUBLE | KILL | QUERY | TIMESTAMP | +| BOOL | DROP | LAST | RAISE | TINYINT | +| BOTTOM | EACH | LE | REM | TOP | +| BY | END | LEASTSQUARES | REPLACE | TRIGGER | +| CACHE | EQ | LIKE | REPLICA | UMINUS | +| CASCADE | EXISTS | LIMIT | RESET | UPLUS | +| CHANGE | EXPLAIN | LINEAR | RESTRICT | USE | +| CLOG | FAIL | LOCAL | ROW | USER | +| CLUSTER | FILL | LP | ROWS | USERS | +| COLON | FIRST | LSHIFT | RP | USING | +| COLUMN | FLOAT | LT | RSHIFT | VALUES | +| COMMA | FOR | MATCH | SCORES | VARIABLE | +| COMP | FROM | MAX | SELECT | VGROUPS | +| CONCAT | GE | METRIC | SEMI | VIEW | +| CONFIGS | GLOB | METRICS | SET | WAVG | +| CONFLICT | GRANTS | MIN | SHOW | WHERE | diff --git a/documentation20/webdocs/markdowndocs/architecture-ch.md b/documentation20/webdocs/markdowndocs/architecture-ch.md index 773d8196f26ff414a9546b474713f46bfb0dd5ac..8921633c8d31f0fc2c2ab3f00d36e8e57d5dbb9a 100644 --- a/documentation20/webdocs/markdowndocs/architecture-ch.md +++ b/documentation20/webdocs/markdowndocs/architecture-ch.md @@ -344,7 +344,6 @@ dataDir /mnt/disk6/taos 2 挂载的盘也可以是非本地的网络盘,只要系统能访问即可。 注:多级存储功能仅企业版支持 -**提示:该功能暂未提供** ## 数据查询 TDengine提供了多种多样针对表和超级表的查询处理功能,除了常规的聚合查询之外,还提供针对时序数据的窗口查询、统计聚合等功能。TDengine的查询处理需要客户端、vnode, mnode节点协同完成。