Skip to content

Commit 6b103b3

Browse files
authored
add new functions of V2.3.0 (#813)
1 parent a92b8e0 commit 6b103b3

12 files changed

Lines changed: 1735 additions & 574 deletions

File tree

src/UserGuide/develop/QuickStart/InterfaceDefinition/InterfaceDefinition-C.md

Lines changed: 53 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -291,43 +291,79 @@ ERRNO tsfile_reader_close(TsFileReader reader);
291291
292292
293293
294-
### Query table/get next
294+
### Query table/get next/query by row
295295
296296
```C
297-
298297
/**
299-
* @brief Query data from the specific table and columns within time range.
298+
* @brief Queries data from the specified table and columns within a given time range.
300299
*
301-
* @param reader [in] Valid TsFileReader handle from tsfile_reader_new().
302-
* @param table_name [in] Target table name. Must exist in the TsFile.
303-
* @param columns [in] Array of column names to fetch.
304-
* @param column_num [in] Number of columns in array.
300+
* @param reader [in] A valid TsFileReader handle obtained by tsfile_reader_new().
301+
* @param table_name [in] Name of the target table, which must exist in the TsFile.
302+
* @param columns [in] Array of column names to be queried.
303+
* @param column_num [in] Number of columns in the column name array.
305304
* @param start_time [in] Start timestamp.
306-
* @param end_time [in] End timestamp. Must ≥ start_time.
307-
* @param err_code [out] RET_OK(0) on success, or error code in errno_define_c.h.
308-
* @return ResultSet Query results handle. Must be freed with
309-
* free_tsfile_result_set().
305+
* @param end_time [in] End timestamp, which must be greater than or equal to start_time.
306+
* @param err_code [out] Returns RET_OK(0) on success, otherwise returns an error code defined in errno_define_c.h.
307+
* @return ResultSet Handle of the query result set. Must be released by free_tsfile_result_set() after use.
310308
*/
311309
ResultSet tsfile_query_table(TsFileReader reader, const char* table_name,
312310
char** columns, uint32_t column_num,
313311
Timestamp start_time, Timestamp end_time,
314312
ERRNO* err_code);
315313
316314
/**
317-
* @brief Check and fetch the next row in the ResultSet.
315+
* @brief Checks and retrieves the next row of data in the result set.
318316
*
319-
* @param result_set [in] Valid ResultSet handle.
320-
* @param error_code RET_OK(0) on success, or error code in errno_define_c.h.
321-
* @return bool - true: Row available, false: End of data or error.
317+
* @param result_set [in] A valid ResultSet handle.
318+
* @param error_code [out] Returns RET_OK(0) on success, otherwise returns an error code defined in errno_define_c.h.
319+
* @return bool - true: Next row exists, false: Reached the end or an error occurred.
322320
*/
323321
bool tsfile_result_set_next(ResultSet result_set, ERRNO* error_code);
324322
325323
/**
326-
* @brief Free Result set
324+
* @brief Releases the resources of the result set.
327325
*
328-
* @param result_set [in] Valid ResultSet handle ptr.
326+
* @param result_set [in] Pointer to a valid ResultSet handle.
329327
*/
330328
void free_tsfile_result_set(ResultSet* result_set);
329+
330+
/**
331+
* @brief Queries time-series data by row (tree model), supporting offset and row count limitation
332+
*
333+
* @param reader [in] A valid TsFileReader handle obtained by tsfile_reader_new()
334+
* @param device_ids [in] Array of device IDs
335+
* @param device_ids_len [in] Number of device IDs
336+
* @param measurement_names [in] Array of measurement (sensor) names
337+
* @param measurement_names_len [in] Number of measurement names
338+
* @param offset [in] Number of starting rows to skip (must be >= 0)
339+
* @param limit [in] Maximum number of rows to return, < 0 means no limitation
340+
* @param err_code [out] Error code, returns E_OK(0) on success
341+
* @return Returns ResultSet handle on success, NULL on failure
342+
*/
343+
ResultSet tsfile_reader_query_tree_by_row(TsFileReader reader,
344+
char** device_ids, int device_ids_len,
345+
char** measurement_names,
346+
int measurement_names_len, int offset,
347+
int limit, ERRNO* err_code);
348+
349+
/**
350+
* @brief Queries table model data by row, supporting offset and row count limitation pushdown
351+
*
352+
* @param reader [in] A valid TsFileReader handle obtained by tsfile_reader_new()
353+
* @param table_name [in] Name of the target table
354+
* @param column_names [in] Array of column names to be queried
355+
* @param column_names_len [in] Number of columns to be queried
356+
* @param offset [in] Number of starting rows to skip (must be >= 0)
357+
* @param limit [in] Maximum number of rows to return, < 0 means no limitation
358+
* @param tag_filter [in] Tag filter handle
359+
* @param batch_size [in] Batch size for data query
360+
* @param err_code [out] Error code, returns E_OK(0) on success
361+
* @return Returns ResultSet handle on success, NULL on failure
362+
*/
363+
ResultSet tsfile_reader_query_table_by_row(
364+
TsFileReader reader, const char* table_name, char** column_names,
365+
int column_names_len, int offset, int limit, TagFilterHandle tag_filter,
366+
int batch_size, ERRNO* err_code);
331367
```
332368

333369

0 commit comments

Comments
 (0)