• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# oh_predicates.h
2<!--Kit: ArkData-->
3<!--Subsystem: DistributedDataManager-->
4<!--Owner: @baijidong-->
5<!--Designer: @widecode; @htt1997-->
6<!--Tester: @yippo; @logic42-->
7<!--Adviser: @ge-yafang-->
8
9## 概述
10
11表示关系型数据库(RDB)的谓词。
12
13**引用文件:** <database/rdb/oh_predicates.h>
14
15**库:** libnative_rdb_ndk.z.so
16
17**系统能力:** SystemCapability.DistributedDataManager.RelationalStore.Core
18
19**起始版本:** 10
20
21**相关模块:** [RDB](capi-rdb.md)
22
23## 汇总
24
25### 结构体
26
27| 名称                                   | typedef关键字 | 描述       |
28| -------------------------------------- | ------------- | ---------- |
29| [OH_Predicates](capi-rdb-oh-predicates.md) | OH_Predicates | 表示谓词。 |
30
31### 枚举
32
33| 名称                          | typedef关键字 | 描述       |
34| ----------------------------- | ------------- | ---------- |
35| [OH_OrderType](#oh_ordertype) | OH_OrderType  | 排序方式。 |
36
37### 函数
38
39| 名称                                                         | 描述                                                         |
40| ------------------------------------------------------------ | ------------------------------------------------------------ |
41| [int OH_Predicates_NotLike(OH_Predicates *predicates, const char *field, const char *pattern)](#oh_predicates_notlike) | 设置OH_Predicates以匹配数据类型为字符串且值不类似于指定值的字段。<br>此方法类似于SQL语句中的“Not like”。 |
42| [int OH_Predicates_Glob(OH_Predicates *predicates, const char *field, const char *pattern)](#oh_predicates_glob) | 设置OH_Predicates以匹配指定字段(数据类型为字符串)且值包含通配符的字段。<br>与like方法不同,此方法的输入参数区分大小写。 |
43| [int OH_Predicates_NotGlob(OH_Predicates *predicates, const char *field, const char *pattern)](#oh_predicates_notglob) | 设置OH_Predicates以不匹配指定字段(数据类型为字符串)且值包含通配符的字段。<br>与Not Like方法不同,此方法的输入参数区分大小写。 |
44| [int OH_Predicates_Having(OH_Predicates *predicates, const char *conditions, const OH_Data_Values *values)](#oh_predicates_having) | 设置OH_Predicates以指定条件来过滤分组结果,这些结果将出现在最终结果中。 |
45
46## 枚举类型说明
47
48### OH_OrderType
49
50```
51enum OH_OrderType
52```
53
54**描述**
55
56排序方式。
57
58**起始版本:** 10
59
60| 枚举项   | 描述       |
61| -------- | ---------- |
62| ASC = 0  | 升序排列。 |
63| DESC = 1 | 降序排列。 |
64
65
66## 函数说明
67
68### OH_Predicates_NotLike()
69
70```
71int OH_Predicates_NotLike(OH_Predicates *predicates, const char *field, const char *pattern)
72```
73
74**描述**
75
76设置OH_Predicates以匹配数据类型为字符串且值不类似于指定值的字段。<br>此方法类似于SQL语句中的“Not like”。
77
78**起始版本:** 20
79
80
81**参数:**
82
83| 参数项                                             | 描述                                                       |
84| -------------------------------------------------- | ---------------------------------------------------------- |
85| [OH_Predicates](capi-rdb-oh-predicates.md) *predicates | 表示指向[OH_Predicates](capi-rdb-oh-predicates.md)实例的指针。 |
86| const char *field                                  | 表示数据库表中的列名。                                     |
87| const char *pattern                                | 表示谓词不匹配的模式。                                     |
88
89**返回:**
90
91| 类型 | 说明                                                         |
92| ---- | ------------------------------------------------------------ |
93| int  | 返回执行结果。<br>如果执行成功,返回RDB_OK。<br>如果输入参数无效,返回RDB_E_INVALID_ARGS。 |
94
95### OH_Predicates_Glob()
96
97```
98int OH_Predicates_Glob(OH_Predicates *predicates, const char *field, const char *pattern)
99```
100
101**描述**
102
103设置OH_Predicates以匹配指定字段(数据类型为字符串)且值包含通配符的字段。<br>与like方法不同,此方法的输入参数区分大小写。
104
105**起始版本:** 20
106
107
108**参数:**
109
110| 参数项                                             | 描述                                                       |
111| -------------------------------------------------- | ---------------------------------------------------------- |
112| [OH_Predicates](capi-rdb-oh-predicates.md) *predicates | 表示指向[OH_Predicates](capi-rdb-oh-predicates.md)实例的指针。 |
113| const char *field                                  | 表示数据库表中的列名。                                     |
114| const char *pattern                                | 表示谓词匹配的样式。                                       |
115
116**返回:**
117
118| 类型 | 说明                                                         |
119| ---- | ------------------------------------------------------------ |
120| int  | 返回执行结果。<br>如果执行成功,返回RDB_OK。<br>如果输入参数无效,返回RDB_E_INVALID_ARGS。 |
121
122### OH_Predicates_NotGlob()
123
124```
125int OH_Predicates_NotGlob(OH_Predicates *predicates, const char *field, const char *pattern)
126```
127
128**描述**
129
130设置OH_Predicates以不匹配指定字段(数据类型为字符串)且值包含通配符的字段。<br>与Not Like方法不同,此方法的输入参数区分大小写。
131
132**起始版本:** 20
133
134
135**参数:**
136
137| 参数项                                             | 描述                                                       |
138| -------------------------------------------------- | ---------------------------------------------------------- |
139| [OH_Predicates](capi-rdb-oh-predicates.md) *predicates | 表示指向[OH_Predicates](capi-rdb-oh-predicates.md)实例的指针。 |
140| const char *field                                  | 表示数据库表中的列名。                                     |
141| const char *pattern                                | 表示谓词不匹配的样式。                                     |
142
143**返回:**
144
145| 类型 | 说明                                                         |
146| ---- | ------------------------------------------------------------ |
147| int  | 返回执行结果。<br>如果执行成功,返回RDB_OK。<br>如果输入参数无效,返回RDB_E_INVALID_ARGS。 |
148
149### OH_Predicates_Having()
150
151```
152int OH_Predicates_Having(OH_Predicates *predicates, const char *conditions, const OH_Data_Values *values)
153```
154
155**描述**
156
157设置OH_Predicates以指定条件来过滤分组结果,这些结果将出现在最终结果中。
158
159**起始版本:** 20
160
161
162**参数:**
163
164| 参数项                                                 | 描述                                                         |
165| ------------------------------------------------------ | ------------------------------------------------------------ |
166| [OH_Predicates](capi-rdb-oh-predicates.md) *predicates     | 表示指向[OH_Predicates](capi-rdb-oh-predicates.md)实例的指针。   |
167| const char *conditions                                 | 表示having子句中的过滤条件。                                 |
168| const [OH_Data_Values](capi-rdb-oh-data-values.md) *values | 表示指向[OH_Data_Values](capi-rdb-oh-data-values.md)实例的指针。 |
169
170**返回:**
171
172| 类型 | 说明                                                         |
173| ---- | ------------------------------------------------------------ |
174| int  | 返回错误码。<br>如果执行成功,返回RDB_OK。<br>如果输入参数无效,返回RDB_E_INVALID_ARGS。 |
175
176