Utilice Tablestore SDK for Java para leer valores DATETIME, DATE y TIME a partir de los resultados de una consulta SQL.
Requisitos previos
Instale Tablestore SDK for Java e inicialice un cliente.
Utilice Tablestore SDK for Java 5.16.0 o posterior.
Descripción
Llame al método sqlQuery para ejecutar una instrucción SELECT y utilice las funciones de fecha y hora de SQL para convertir valores numéricos en valores DATETIME, TIME o DATE. La función from_unixtime acepta marcas de tiempo Unix en segundos.
SQLQueryResponse sqlQuery(SQLQueryRequest request)
getDateTime devuelve un valor en UTC. Para usar una zona horaria diferente, llame a withZoneSameInstant para convertir la zona horaria.
A continuación se convierten las marcas de tiempo Unix en segundos de la columna event_time de la tabla de asignación example_table a valores de fecha y hora, y se leen los valores convertidos por nombre de columna.
String query = "SELECT "
+ "from_unixtime(event_time) AS datetime_value, "
+ "time(from_unixtime(event_time)) AS time_value, "
+ "date(from_unixtime(event_time)) AS date_value "
+ "FROM example_table WHERE tenant_id = 1 LIMIT 1";
SQLQueryRequest request = new SQLQueryRequest(query);
SQLQueryResponse response = client.sqlQuery(request);
SQLResultSet resultSet = response.getSQLResultSet();
while (resultSet.hasNext()) {
SQLRow row = resultSet.next();
ZonedDateTime dateTime = row.getDateTime("datetime_value");
Duration time = row.getTime("time_value");
LocalDate date = row.getDate("date_value");
System.out.println(dateTime.withZoneSameInstant(ZoneId.of("Asia/Shanghai")));
System.out.println(time);
System.out.println(date);
}
Parámetros
SQLQueryRequest contiene el siguiente parámetro.
|
Nombre |
Tipo |
Descripción |
|
query (obligatorio) |
String |
La instrucción |
Respuesta
SQLQueryResponse.rows almacena el resultado serializado de la consulta SQL. Llame a getSQLResultSet() para obtener el objeto SQLResultSet analizado y, a continuación, lea los valores de fecha y hora desde SQLRow.
Métodos para leer valores de fecha y hora
|
Método |
Tipo de retorno |
Descripción |
|
|
ZonedDateTime |
Lee un valor |
|
|
ZonedDateTime |
Lee un valor |
|
|
Duration |
Lee un valor |
|
|
Duration |
Lee un valor |
|
|
LocalDate |
Lee un valor |
|
|
LocalDate |
Lee un valor |