1. 功能描述
-
KV、KKV 查询用于支持 HA3 中的 KV 表和 KKV 表,Iquan 管理 KV 表和 KKV 表的注册信息。
-
KV、KKV 查询时必须包含 PK 条件(详情见下文“使用限制”)。
2. 支持版本
>= Ha3 3.7.5
3. 查询示例
3.1 KV 表
-
Note:示例中 KV 表 category 的 PK 字段为 cat_id。
SELECT cat_id, category_name FROM category where cat_id=2;
SELECT cat_id, category_name FROM category where cat_id in (2, 3);
3.2 KKV 表
-
Note:示例中 KKV 表 company 的 PK 字段为 company_id。
SELECT company_id, company_name FROM company where company_id in (1,2);
SELECT company_id, company_name FROM company where company_id = 1 OR company_id = 2;
4. 使用限制
-
KV、KKV 单表查询,
where
子句后必须含有 PK 字段的等值查询条件。 -
如果顶层查询条件由 AND 连接,必须保证至少有一个子条件是 PK 字段的等值查询条件。
SELECT company_id, company_name
FROM company
WHERE company_id IN (1,2) AND company_name <> 'HEHE';
-
如果顶层查询条件由 OR 连接,必须保证所有的子条件都有 PK 字段的等值查询条件。
SELECT company_id, company_name
FROM company
WHERE
(company_id = 1 AND company_name <> 'HEHE')
(company_id IN (3,4,5) AND company_name = 'HEHE')
;
-
KV/KKV 表与其他表关联时,只能支持 LookupJoin,并且 KV/KKV 表必须为 build 表;