3e74d0d8创建于 2025年12月15日历史提交

Class (RdbPredicates)

Defines the predicates for an RDB store. This class determines whether the conditional expression for the RDB store is true or false. Multiple predicates statements can be concatenated by using and() by default. RdbPredicates cannot be passed across threads using Sendable.

NOTE

The initial APIs of this module are supported since API version 9. Newly added APIs will be marked with a superscript to indicate their earliest API version.

Module to Import

import { relationalStore } from '@kit.ArkData';

constructor

constructor(name: string)

Defines a constructor used to create an RdbPredicates object.

System capability: SystemCapability.DistributedDataManager.RelationalStore.Core

Parameters

Name Type Mandatory Description
name string Yes Database table name.

Error codes

For details about the error codes, see Universal Error Codes.

ID Error Message
401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.

Example:

let predicates = new relationalStore.RdbPredicates("EMPLOYEE");

inDevices

inDevices(devices: Array<string>): RdbPredicates

Creates an RdbPredicates object to specify the remote devices to connect on the network during distributed database sync.

NOTE

devices can be obtained by using deviceManager.getAvailableDeviceListSync. When calling sync(), you need to call inDevices to specify the devices. If inDevices is not used, data will be synced to all devices on the network by default.

System capability: SystemCapability.DistributedDataManager.RelationalStore.Core

Parameters

Name Type Mandatory Description
devices Array<string> Yes IDs of the remote devices to connect.

Return value

Type Description
RdbPredicates RdbPredicates object created.

Error codes

For details about the error codes, see Universal Error Codes.

ID Error Message
401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.

Example:

import { distributedDeviceManager } from '@kit.DistributedServiceKit';
import { BusinessError } from '@kit.BasicServicesKit';

let dmInstance: distributedDeviceManager.DeviceManager;
let deviceIds: Array<string> = [];

try {
  dmInstance = distributedDeviceManager.createDeviceManager("com.example.appdatamgrverify");
  let devices: Array<distributedDeviceManager.DeviceBasicInfo> = dmInstance.getAvailableDeviceListSync();
  for (let i = 0; i < devices.length; i++) {
    deviceIds[i] = devices[i].networkId!;
  }
} catch (err) {
  let code = (err as BusinessError).code;
  let message = (err as BusinessError).message;
  console.error("createDeviceManager errCode:" + code + ",errMessage:" + message);
}

let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.inDevices(deviceIds);

inAllDevices

inAllDevices(): RdbPredicates

Creates an RdbPredicates object to specify all remote devices on the network to connect during distributed database sync.

System capability: SystemCapability.DistributedDataManager.RelationalStore.Core

Return value

Type Description
RdbPredicates RdbPredicates object created.

Example:

let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.inAllDevices();

equalTo

equalTo(field: string, value: ValueType): RdbPredicates

Creates an RdbPredicates object to search for the records in the specified column that are equal to the given value.

System capability: SystemCapability.DistributedDataManager.RelationalStore.Core

Parameters

Name Type Mandatory Description
field string Yes Column name in the database table.
value ValueType Yes Value to match.

Return value

Type Description
RdbPredicates RdbPredicates object created.

Error codes

For details about the error codes, see Universal Error Codes.

ID Error Message
401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.

Example:

// Find all the records in the NAME column where the value is Lisa.
let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.equalTo("NAME", "Lisa");

notEqualTo

notEqualTo(field: string, value: ValueType): RdbPredicates

Creates an RdbPredicates object to search for the records in the specified column that are not equal to the given value.

System capability: SystemCapability.DistributedDataManager.RelationalStore.Core

Parameters

Name Type Mandatory Description
field string Yes Column name in the database table.
value ValueType Yes Value to match.

Return value

Type Description
RdbPredicates RdbPredicates object created.

Error codes

For details about the error codes, see Universal Error Codes.

ID Error Message
401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.

Example:

// Find all the records in the NAME column where the value is not Lisa.
let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.notEqualTo("NAME", "Lisa");

beginWrap

beginWrap(): RdbPredicates

Creates an RdbPredicates object to add a left parenthesis.

System capability: SystemCapability.DistributedDataManager.RelationalStore.Core

Return value

Type Description
RdbPredicates RdbPredicates object created.

Example:

let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.equalTo("NAME", "Lisa")
  .beginWrap()
  .equalTo("AGE", 18)
  .or()
  .equalTo("SALARY", 200.5)
  .endWrap();

endWrap

endWrap(): RdbPredicates

Creates an RdbPredicates object to add a right parenthesis.

System capability: SystemCapability.DistributedDataManager.RelationalStore.Core

Return value

Type Description
RdbPredicates RdbPredicates object created.

Example:

let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.equalTo("NAME", "Lisa")
  .beginWrap()
  .equalTo("AGE", 18)
  .or()
  .equalTo("SALARY", 200.5)
  .endWrap();

or

or(): RdbPredicates

Creates an RdbPredicates object to add the OR condition.

System capability: SystemCapability.DistributedDataManager.RelationalStore.Core

Return value

Type Description
RdbPredicates RdbPredicates object created.

Example:

// Find all records in the NAME column where the value is Lisa or Rose.
let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.equalTo("NAME", "Lisa")
  .or()
  .equalTo("NAME", "Rose");

and

and(): RdbPredicates

Creates an RdbPredicates object to add the AND condition.

System capability: SystemCapability.DistributedDataManager.RelationalStore.Core

Return value

Type Description
RdbPredicates RdbPredicates object created.

Example:

// Find the records in the EMPLOYEE table where the NAME column is Lisa and the SALARY column is 200.5.
let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.equalTo("NAME", "Lisa")
  .and()
  .equalTo("SALARY", 200.5);

contains

contains(field: string, value: string): RdbPredicates

Creates an RdbPredicates object to search for the records in the specified column that contain the given value.

System capability: SystemCapability.DistributedDataManager.RelationalStore.Core

Parameters

Name Type Mandatory Description
field string Yes Column name in the database table.
value string Yes Value to match.

Return value

Type Description
RdbPredicates RdbPredicates object created.

Error codes

For details about the error codes, see Universal Error Codes.

ID Error Message
401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.

Example:

// Find all the records that contain the string 'os' in the NAME column, for example, Rose.
let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.contains("NAME", "os");

beginsWith

beginsWith(field: string, value: string): RdbPredicates

Creates an RdbPredicates object to search for the records in the specified column that begin with the given value.

System capability: SystemCapability.DistributedDataManager.RelationalStore.Core

Parameters

Name Type Mandatory Description
field string Yes Column name in the database table.
value string Yes Value to match.

Return value

Type Description
RdbPredicates RdbPredicates object created.

Error codes

For details about the error codes, see Universal Error Codes.

ID Error Message
401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.

Example:

// Find all the records that start with "Li" in the NAME column, for example, Lisa.
let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.beginsWith("NAME", "Li");

endsWith

endsWith(field: string, value: string): RdbPredicates

Creates an RdbPredicates object to search for the records in the specified column that end with the given value.

System capability: SystemCapability.DistributedDataManager.RelationalStore.Core

Parameters

Name Type Mandatory Description
field string Yes Column name in the database table.
value string Yes Value to match.

Return value

Type Description
RdbPredicates RdbPredicates object created.

Error codes

For details about the error codes, see Universal Error Codes.

ID Error Message
401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.

Example:

// Find all the records that end with "se" in the NAME column, for example, Rose.
let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.endsWith("NAME", "se");

isNull

isNull(field: string): RdbPredicates

Creates an RdbPredicates object to search for the records in the specified column that are null.

System capability: SystemCapability.DistributedDataManager.RelationalStore.Core

Parameters

Name Type Mandatory Description
field string Yes Column name in the database table.

Return value

Type Description
RdbPredicates RdbPredicates object created.

Error codes

For details about the error codes, see Universal Error Codes.

ID Error Message
401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.

Example:

let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.isNull("NAME");

isNotNull

isNotNull(field: string): RdbPredicates

Creates an RdbPredicates object to search for the records in the specified column that are not null.

System capability: SystemCapability.DistributedDataManager.RelationalStore.Core

Parameters

Name Type Mandatory Description
field string Yes Column name in the database table.

Return value

Type Description
RdbPredicates RdbPredicates object created.

Error codes

For details about the error codes, see Universal Error Codes.

ID Error Message
401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.

Example:

let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.isNotNull("NAME");

like

like(field: string, value: string): RdbPredicates

Creates an RdbPredicates object to search for the records in the specified column that are similar to the given value.

System capability: SystemCapability.DistributedDataManager.RelationalStore.Core

Parameters

Name Type Mandatory Description
field string Yes Column name in the database table.
value string Yes Condition for fuzzy match. Generally, this parameter is used together with a wildcard. A percent sign (%) represents any character of any length, and an underscore (_) represents a single character.

Return value

Type Description
RdbPredicates RdbPredicates object created.

Error codes

For details about the error codes, see Universal Error Codes.

ID Error Message
401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.

Example:

// Find all the records that are similar to "os" in the NAME column, for example, Rose.
let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.like("NAME", "%os%");

glob

glob(field: string, value: string): RdbPredicates

Creates an RdbPredicates object to search for the records in the specified column that match the given string.

System capability: SystemCapability.DistributedDataManager.RelationalStore.Core

Parameters

Name Type Mandatory Description
field string Yes Column name in the database table.
value string Yes Value to match.
Wildcards are supported. An asterisk (*) indicates zero, one, or multiple digits or characters, and a question mark (?) indicates a single digit or character.

Return value

Type Description
RdbPredicates RdbPredicates object created.

Error codes

For details about the error codes, see Universal Error Codes.

ID Error Message
401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.

Example:

// Find the strings that match "?h*g" in the NAME column.
let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.glob("NAME", "?h*g");

between

between(field: string, low: ValueType, high: ValueType): RdbPredicates

Creates an RdbPredicates object to search for the records that are within the given range (including the min. and max. values) in the specified column.

System capability: SystemCapability.DistributedDataManager.RelationalStore.Core

Parameters

Name Type Mandatory Description
field string Yes Column name in the database table.
low ValueType Yes Minimum value of the range to set.
high ValueType Yes Maximum value of the range to set.

Return value

Type Description
RdbPredicates RdbPredicates object created.

Error codes

For details about the error codes, see Universal Error Codes.

ID Error Message
401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.

Example:

// Find the records that are greater than or equal to 10 and less than or equal to 50 in the AGE column.
let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.between("AGE", 10, 50);

notBetween

notBetween(field: string, low: ValueType, high: ValueType): RdbPredicates

Creates an RdbPredicates object to search for the records that are out of the given range (excluding the min. and max. values) in the specified column.

System capability: SystemCapability.DistributedDataManager.RelationalStore.Core

Parameters

Name Type Mandatory Description
field string Yes Column name in the database table.
low ValueType Yes Minimum value of the range to set.
high ValueType Yes Maximum value of the range to set.

Return value

Type Description
RdbPredicates RdbPredicates object created.

Error codes

For details about the error codes, see Universal Error Codes.

ID Error Message
401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.

Example:

// Find the records that are less than 10 or greater than 50 in the AGE column.
let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.notBetween("AGE", 10, 50);

greaterThan

greaterThan(field: string, value: ValueType): RdbPredicates

Creates an RdbPredicates object to search for the records that are greater than the given value in the specified column.

System capability: SystemCapability.DistributedDataManager.RelationalStore.Core

Parameters

Name Type Mandatory Description
field string Yes Column name in the database table.
value ValueType Yes Value to match.

Return value

Type Description
RdbPredicates RdbPredicates object created.

Error codes

For details about the error codes, see Universal Error Codes.

ID Error Message
401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.

Example:

// Find all the records that are greater than 18 in the AGE column.
let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.greaterThan("AGE", 18);

lessThan

lessThan(field: string, value: ValueType): RdbPredicates

Creates an RdbPredicates object to search for the records that are less than the given value in the specified column.

System capability: SystemCapability.DistributedDataManager.RelationalStore.Core

Parameters

Name Type Mandatory Description
field string Yes Column name in the database table.
value ValueType Yes Value to match.

Return value

Type Description
RdbPredicates RdbPredicates object created.

Error codes

For details about the error codes, see Universal Error Codes.

ID Error Message
401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.

Example:

// Find all the records that are less than 20 in the AGE column.
let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.lessThan("AGE", 20);

greaterThanOrEqualTo

greaterThanOrEqualTo(field: string, value: ValueType): RdbPredicates

Creates an RdbPredicates object to search for the records that are greater than or equal to the given value in the specified column.

System capability: SystemCapability.DistributedDataManager.RelationalStore.Core

Parameters

Name Type Mandatory Description
field string Yes Column name in the database table.
value ValueType Yes Value to match.

Return value

Type Description
RdbPredicates RdbPredicates object created.

Error codes

For details about the error codes, see Universal Error Codes.

ID Error Message
401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.

Example:

// Find all the records that are greater than or equal to 18 in the AGE column.
let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.greaterThanOrEqualTo("AGE", 18);

lessThanOrEqualTo

lessThanOrEqualTo(field: string, value: ValueType): RdbPredicates

Creates an RdbPredicates object to search for the records that are less than or equal to the given value in the specified column.

System capability: SystemCapability.DistributedDataManager.RelationalStore.Core

Parameters

Name Type Mandatory Description
field string Yes Column name in the database table.
value ValueType Yes Value to match.

Return value

Type Description
RdbPredicates RdbPredicates object created.

Error codes

For details about the error codes, see Universal Error Codes.

ID Error Message
401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.

Example:

// Find all the records that are less than or equal to 20 in the AGE column.
let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.lessThanOrEqualTo("AGE", 20);

orderByAsc

orderByAsc(field: string): RdbPredicates

Creates an RdbPredicates object to sort the records in the specified column in ascending order.

System capability: SystemCapability.DistributedDataManager.RelationalStore.Core

Parameters

Name Type Mandatory Description
field string Yes Column name in the database table.

Return value

Type Description
RdbPredicates RdbPredicates object created.

Error codes

For details about the error codes, see Universal Error Codes.

ID Error Message
401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.

Example:

let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.orderByAsc("NAME");

orderByDesc

orderByDesc(field: string): RdbPredicates

Creates an RdbPredicates object to sort the records in the specified column in descending order.

System capability: SystemCapability.DistributedDataManager.RelationalStore.Core

Parameters

Name Type Mandatory Description
field string Yes Column name in the database table.

Return value

Type Description
RdbPredicates RdbPredicates object created.

Error codes

For details about the error codes, see Universal Error Codes.

ID Error Message
401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.

Example:

let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.orderByDesc("AGE");

distinct

distinct(): RdbPredicates

Creates an RdbPredicates object to filter out duplicate records.

System capability: SystemCapability.DistributedDataManager.RelationalStore.Core

Return value

Type Description
RdbPredicates RdbPredicates object that can filter out duplicate records.

Example:

let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.equalTo("NAME", "Rose").distinct(); // Deduplicate result sets whose NAME is Rose.

limitAs

limitAs(value: number): RdbPredicates

Creates a RdbPredicates object to limit the number of records.

System capability: SystemCapability.DistributedDataManager.RelationalStore.Core

Parameters

Name Type Mandatory Description
value number Yes Maximum number of data records. The value should be a positive integer. If a value less than or equal to 0 is specified, the number of records is not limited.

Return value

Type Description
RdbPredicates Predicates that specify the maximum number of records.

Error codes

For details about the error codes, see Universal Error Codes.

ID Error Message
401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.

Example:

let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.equalTo("NAME", "Rose").limitAs(3);

offsetAs

offsetAs(rowOffset: number): RdbPredicates

Creates an RdbPredicates object to set the start position of the query result. This API must be used together with limitAs. Otherwise, no result will be returned. To query all rows after the specified offset, pass in a parameter less than or equal to 0 in limitAs.

System capability: SystemCapability.DistributedDataManager.RelationalStore.Core

Parameters

Name Type Mandatory Description
rowOffset number Yes Start position of the query result. By default, the start position is the beginning of the result set. If rowOffset is a negative number, the start position is the beginning of the result set. If rowOffset exceeds the end of the result set, the query result is empty.

Return value

Type Description
RdbPredicates Predicates that specify the start position of the returned result.

Error codes

For details about the error codes, see Universal Error Codes.

ID Error Message
401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.

Example:

let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.equalTo("NAME", "Rose").limitAs(-1).offsetAs(3);

groupBy

groupBy(fields: Array<string>): RdbPredicates

Creates a RdbPredicates object to group the query results based on the specified columns.

System capability: SystemCapability.DistributedDataManager.RelationalStore.Core

Parameters

Name Type Mandatory Description
fields Array<string> Yes Names of columns to group.

Return value

Type Description
RdbPredicates Predicates that group rows with the same value.

Error codes

For details about the error codes, see Universal Error Codes.

ID Error Message
401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.

Example:

let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.groupBy(["AGE", "NAME"]);

indexedBy

indexedBy(field: string): RdbPredicates

Creates a RdbPredicates object to specify the index column.

System capability: SystemCapability.DistributedDataManager.RelationalStore.Core

Parameters

Name Type Mandatory Description
field string Yes Name of the index column.

Return value

Type Description
RdbPredicates RdbPredicates object created.

Error codes

For details about the error codes, see Universal Error Codes.

ID Error Message
401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.

Example:

let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.indexedBy("SALARY");

in

in(field: string, value: Array<ValueType>): RdbPredicates

Creates an RdbPredicates object to search for the records that are in the given range in the specified column.

NOTE

The value array cannot be empty; otherwise, this condition becomes invalid. As a result, the operation (such as full query, update, or deletion) is performed on all data. Before calling this API, check whether the value array is empty to avoid misoperations.

System capability: SystemCapability.DistributedDataManager.RelationalStore.Core

Parameters

Name Type Mandatory Description
field string Yes Column name in the database table.
value Array<ValueType> Yes Array of ValueTypes to match.

Return value

Type Description
RdbPredicates RdbPredicates object created.

Error codes

For details about the error codes, see Universal Error Codes.

ID Error Message
401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.

Example:

// Find records that are within [18, 20] in the AGE column.
let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.in("AGE", [18, 20]);

notIn

notIn(field: string, value: Array<ValueType>): RdbPredicates

Creates an RdbPredicates object to search for the records that are out of the given range in the specified column.

System capability: SystemCapability.DistributedDataManager.RelationalStore.Core

Parameters

Name Type Mandatory Description
field string Yes Column name in the database table.
value Array<ValueType> Yes Array of ValueTypes to match.

Return value

Type Description
RdbPredicates RdbPredicates object created.

Error codes

For details about the error codes, see Universal Error Codes.

ID Error Message
401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.

Example:

// Find the records that are not within [Lisa, Rose] in the NAME column.
let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.notIn("NAME", ["Lisa", "Rose"]);

notContains12+

notContains(field: string, value: string): RdbPredicates

Creates an RdbPredicates object to search for the records that do not contain the given value in the specified column.

System capability: SystemCapability.DistributedDataManager.RelationalStore.Core

Parameters

Name Type Mandatory Description
field string Yes Column name in the database table.
value string Yes Value to match.

Return value

Type Description
RdbPredicates RdbPredicates object created.

Error codes

For details about the error codes, see Universal Error Codes.

ID Error Message
401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.

Example:

// Find the records that do not contain the string "os" in the NAME column, for example, Lisa.
let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.notContains("NAME", "os");

notLike12+

notLike(field: string, value: string): RdbPredicates

Creates an RdbPredicates object to search for the records in the specified column that are not similar to the given value.

System capability: SystemCapability.DistributedDataManager.RelationalStore.Core

Parameters

Name Type Mandatory Description
field string Yes Column name in the database table.
value string Yes Condition for fuzzy match. Generally, this parameter is used together with a wildcard. A percent sign (%) represents any character of any length, and an underscore (_) represents a single character.

Return value

Type Description
RdbPredicates RdbPredicates object created.

Error codes

For details about the error codes, see Universal Error Codes.

ID Error Message
401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.

Example:

// Find all the records that are not similar to "os" in the NAME column, for example, Lisa.
let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.notLike("NAME", "%os%");

having20+

having(conditions:string, args?: Array<ValueType>): RdbPredicates

Filters for group data that meets the conditions.

System capability: SystemCapability.DistributedDataManager.RelationalStore.Core

Parameters

Name Type Mandatory Description
conditions string Yes Condition used to filter the data obtained using groupBy. This parameter cannot be empty and must be used with groupBy.
args Array<ValueType> No Parameters used in conditions, which replace the placeholder in the conditional statement. If this parameter is not specified, the default value is an empty array.

Return value

Type Description
RdbPredicates RdbPredicates object created.

Error codes

For details about the error codes, see RDB Error Codes.

ID Error Message
14800001 Invalid arguments. Possible causes: 1. Parameter is out of valid range; 2. Missing GROUP BY clause.

Example 1:

// Pass a complete condition.
let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.groupBy(["AGE"]);
predicates.having("NAME = zhangsan");

Example 2:

// Use placeholders in the condition and pass values to args to replace the placeholders.
let predicates = new relationalStore.RdbPredicates("EMPLOYEE");
predicates.groupBy(["AGE"]);
predicates.having("NAME = ?", ["zhangsan"]);