第8步:查询本地索引

TcaplusDB Client - select命令(查询本地索引)

TcaplusDB Client的使用方法参见文档。

1. 功能说明

根据用户指定某个本地索引的所有索引字段的值,查询该索引条目下的所有数据。支持整条数据的所有字段值或部分字段的值。如果没有匹配的记录,将会返回错误。

查询本地索引前,必须确保表中已经定义了相应的本地索引。

如果需要对查询到文件中的记录进行修改,再更新到服务端,请使用load命令。

请注意,对于List表,load命令会直接插入一条新记录,如果需要更新服务端的原有记录,请使用update命令并指定index。

请注意,保存查询结果的文件名不能以数字开头,指定保存路径中也不能有纯数字命名的文件夹路径。

2. 启始版本

3.40.0

3. 命令语法

select index_key1, index_key2, key3, value1, value2 [into result.csv] from table [where index_key1 = 1 and index_key2 = "abc"] [\P] [\G] [\S] [using tdr] [encode]
select * [into result.xml] from table [where index_key1 = 1 and index_key2 = "abc"] using tdr [\P];

参数说明:

参数PB表TDR表必填项
table表格的名字表格的名字是
index_key索引字段名,必须指定所有索引字段的值索引字段名,必须指定所有索引字段的值是
key/value字段名字段名至少一个或 *
\P打印时延数据打印时延数据否
\G竖排打印竖排打印否
\S从从副本读取数据从从副本读取数据否,不填默认从主副本读取数据
\N不打印字段名不打印字段名否,不填默认打印字段名
\A将查询结果追加写到结果文件将查询结果追加写到结果文件否,不填默认将查询结果覆盖写到结果文件
into输出数据到文件(如果需要导入到db同结构的其他表中,请使用load命令。)输出数据到文件(如果需要导入到db同结构的其他表中,请使用load命令。)否
using tdr不支持如果需要使用该参数,则在启动TcaplusDB Client时,就要通过启动参数指定与目标表对应的TDR文件否
encode不支持(回车字符或不可见字符已预处理)当字符串类型的字段值中包含引号或者回车、换行等不可见字符时,建议通过encode导出。当指定该参数后,导出命令会将含有不可见字符的string类型字段值进行BASE64编码后,再输出,并且只对tdr表导出为csv格式生效注意:只指定了using tdr参数时,该参数才生效否

where语句中除了指定部分key,在3.55.0之后版本,还支持使用 AND 结合更灵活的过滤条件,见详细语法。

4. 命令示例

表定义详见示例表定义。

tcaplus> select * from test_table where gameid=1234 and itemid=12323;
+------+------+----------+------+----+-----+
|gameid|itemid|name      |typeid|Data|uname|
+------+------+----------+------+----+-----+
|1234  |12323 |"testname"|0     |9   |"ab" |
+------+------+----------+------+----+-----+
1 records selectd, select time: 9802 us

tcaplus> select uname from test_table where gameid=1234 and itemid=12323;
+------+------+----------+-----+
|gameid|itemid|name      |uname|
+------+------+----------+-----+
|1234  |12323 |"testname"|"ab" |
+------+------+----------+-----+
1 records selectd, select time: 9457 us

5. 常见错误

参考常见错误文档。

6. 相关文档

[TDR Generic表][C++ SDK]查询本地索引接口说明。

[TDR Generic表][Java SDK]查询本地索引接口说明。

[TDR Generic表][Go SDK]查询本地索引接口说明。

[PB Generic表][C++ SDK]查询本地索引接口说明。

[PB Generic表][Go SDK]查询本地索引接口说明。

[PB Generic表][RESTFul API]查询本地索引接口说明。