GET_TS
Содержание раздела
Поддерживается в версиях: 7.2 / 7.1 / 7.0 / 6.12 / 6.11 / 6.10.
Запрос возвращает метку времени (в Unix- и UTC-формате) для успешно завершенной операции записи. Запрос может содержать индексированные и именованные параметры.
Получение метки времени доступно для операции:
- указанной в таблице или представлении,
- последней в таблице или представлении,
- последней в логической БД.
Получение меток времени операций доступно для сущностей логической БД:
- логических таблиц;
- материализованных представлений;
- простых логических представлений на базе логических таблиц и материализованных представлений (возвращается информация по сущности-источнику).
Метку времени операции также можно запросить с помощью GET-методов /ts.
Синтаксис
Запрос по указанной операции в таблице или представлении:
GET_TS([db_name.]entity_name, sys_cn)
Запрос по последней операции в таблице или представлении:
GET_TS([db_name.]entity_name)
Запрос по последней операции в логической БД, используемой по умолчанию:
GET_TS()
Аргументы запроса могут быть заданы как индексированные и (или) именованные параметры.
Параметры:
db_name (VARCHAR | CHAR | STRING)
-
Имя логической базы данных, которой принадлежит таблица или представление. Опционально, если выбрана логическая БД, используемая по умолчанию.
entity_name (VARCHAR | CHAR | STRING)
-
Имя таблицы или представления, по которому запрашивается информация.
Возможные значения:
- имя логической таблицы любого типа;
- имя материализованного представления;
- имя простого логического представления, построенного на подзапросе к логической таблице или материализованному представлению.
sys_cn (BIGINT | INT64 | LONG)
-
Номер операции записи.
Допустимые значения: целые числа с 0 до максимального номера операции записи в указанной сущности или сущности-источнике (для простого логического представления), включая обе границы.
Варианты ответа
В ответе возвращается:
- объект ResultSet c одной записью при успешном выполнении запроса;
- исключение при неуспешном выполнении запроса.
Содержимое успешного ответа
Успешный ответ содержит столбцы:
ts
— Unix-метка времени операции, равная целому числу микросекунд с 00:00:00 UTC 1 января 1970 года;datetime
— UTC-метка времени операции в форматеYYYY-MM-DD hh:mm:ss.SSSSSS
.
Особенности возврата метки времени
- Если завершенных операций нет, возвращается
NULL
. - Если операции с указанным номером нет в сущности, возвращается:
- метка времени следующей существующей операции — если указанный номер не превышает номер последней операции в сущности;
NULL
— иначе.
Ограничения
- Запрос доступен для сущностей:
- логических таблиц;
- материализованных представлений;
- простых логических представлений, построенных на подзапросе к логической таблице или материализованному представлению;
- логических БД.
- Если в запросе есть именованные параметры, их имена должны соответствовать соглашениям об именах.
Примеры
Запрос по указанной операции в логической таблице
Запрос с предварительным выбором логической БД:
USE marketing;
GET_TS(sales, 12);
Запрос с указанием логической БД:
GET_TS(marketing.sales, 12)
Запрос по последней операции в логической таблице
Запрос с предварительным выбором логической БД:
USE marketing;
GET_TS(sales);
Запрос с указанием логической БД:
GET_TS(marketing.sales)
Запрос по указанной операции в простом логическом представлении
Запрос с предварительным выбором логической БД:
USE marketing;
GET_TS(sales_view_with_condition, 12);
Запрос с указанием логической БД:
GET_TS(marketing.sales_view_with_condition, 12)
Запрос по последней операции в логической БД
USE marketing;
GET_TS();
Запрос с индексированными параметрами
-- запрос по указанной операции в таблице
GET_TS(?, ?)
Запрос с именованными параметрами
-- запрос по указанной операции в таблице
GET_TS(:table_name_with_db_name, :op_cn)