华为云用户手册

  • time_extract函数 通过指定字段提取日期时间表达式的日期或时间部分。EPOCH, SECOND, MINUTE, HOUR, DAY(月的日), DOW(周的日), DOY(年的日), WEEK(年周), MONTH(1到12), QUARTER(1到4),或YEAR,时区(如果提供)应为时区名称,如"America/Los_Angeles"或偏移量,如"-08:00" 语法:time_extract(expr, unit) 表50 参数说明 参数名称 描述 类型 是否必选 expr 日期和时间表达式,格式为yyyy-MM-dd HH:mm:ss.SSS String 是 unit 时间单位 String 是 返回值类型:Long类型 示例:SELECT TIME_EXTRACT('2023-05-05','YEAR') 表51 查询分析结果 类型 场景 查询语句 TIME_EXTRACT('2023-05-05','YEAR') 返回结果 2023
  • date_add函数 给时间加上给定的时间间隔。 语法:date_add(unit, n, expr) 表58 参数说明 参数名称 描述 类型 是否必选 unit 时间单位,取值为millisecond、second、minute、hour、day、week、month、quarter、year String 是 n 时间间隔 Long 是 expr 时间表达式,格式为yyyy-MM-dd HH:mm:ss.SSS String 是 返回值类型:String类型 示例:SELECT DATE_ADD('minute', 7, '2023-05-15 16:14:00.569') 表59 查询分析结果 类型 场景 查询语句 DATE_ADD('minute', 7, '2023-05-15 16:14:00.569') 返回结果 2023-05-15 16:21:00.569
  • date_trunc函数 根据您指定的时间单位截断日期和时间表达式,并以毫秒、秒、分钟、小时、天、月或年为单位对齐。 语法:date_trunc(unit, expr) 表52 参数说明 参数名称 描述 类型 是否必选 expr 日期和时间表达式,格式为yyyy-MM-dd HH:mm:ss.SSS String 是 unit 时间单位 String 是 返回值类型:Long类型 示例:SELECT DATE_TRUNC('year', '2022-11-20 12:20:30.123') 表53 查询分析结果 类型 场景 查询语句 DATE_TRUNC('year', '2022-11-20 12:20:30.123') 返回结果 2022-01-01 00:00:00.000
  • date_diff函数 返回时间戳expr1和时间戳expr2之间的单位数(有符号)。 语法:date_diff(unit, expr1, expr2) 表54 参数说明 参数名称 描述 类型 是否必选 expr1 第一个日期和时间表达式,格式为yyyy-MM-dd HH:mm:ss.SSS String 是 expr2 第二个日期和时间表达式,格式为yyyy-MM-dd HH:mm:ss.SSS String unit 时间单位 String 是 返回值类型:Long类型 示例:SELECT DATE_DIFF('MONTH', NOW(),'2022-11-20 12:20:30.123') 表55 查询分析结果 类型 场景 查询语句 DATE_DIFF('MONTH', NOW(),'2022-11-20 12:20:30.123') 返回结果 4
  • timezone_minute函数 计算时区的分钟偏移量。 语法:timezone_minute(expr) 表41 参数说明 参数名称 描述 类型 是否必选 expr 日期和时间表达式,格式为yyyy-MM-dd HH:mm:ss.SSS TIMEZONE String 否 返回值类型:Integer类型 示例:SELECT TIMEZONE_MINUTE('2023-04-22 15:31:30.000 Europe/Rome') 表42 查询分析结果 类型 场景 查询语句 TIMEZONE_MINUTE('2023-04-22 15:31:30.000 Europe/Rome') 返回结果 0
  • time_format函数 将时间戳类型的日期和时间表达式转换为指定格式的日期和时间表达式。 语法:time_format(expr, format) 表43 参数说明 参数名称 描述 类型 是否必选 expr 日期和时间表达式。 String 是 format 时间格式。 String 是 返回值类型:String类型 示例:SELECT TIME_FORMAT(__time, 'yyyy-MM-dd HH:mm:ss') 表44 查询分析结果 类型 场景 查询语句 TIME_FORMAT(__time, 'yyyy-MM-dd HH:mm:ss') 返回结果 2023-02-16 07:38:25 format描述: %a Abbreviation for the week. For example, Sun and Sat. %b Abbreviation of the month. For example, Jan and Dec. %c Month. Numeral type. Range: 1-12. %D Day of the month. The value must be suffixed, for example, 0th, 1st, 2nd, and 3rd. %d Day of the month. The value ranges from 01 to 31 in decimal notation. %e Day of the month. The value ranges from 1 to 31 in decimal notation. %H Hour, 24-hour system. %h Hour, 12-hour system. %i Minute. Numeral type. Range: 00–59. %j Day of the year. The value ranges from 001 to 366. %k Hour. The value ranges from 0 to 23. %l Hour. The value ranges from 1 to 12. %M The English expression of the month, for example, January, December. %m Month. Numeral format. The value ranges from 01 to 12. %p AM and PM. %r Time in the 12-hour format. The format is hh:mm:ss AM/PM. %S Indicates the second. The value ranges from 00 to 59. %s Indicates the second. The value ranges from 00 to 59. %T Time, in the 24-hour format of hh:mm:ss. %v The first week of the year, Monday is the first day of the week. The value ranges from 01 to 53. %W The name of the day of the week. For example, Sunday and Saturday. %w Day of the week. Sunday is day 0. %Y A 4-digit year, for example, 2020. %y A 2-digit year, for example, 20. %% Escape character for%.
  • date_format函数 将时间戳类型的日期和时间表达式转换为指定格式的日期和时间表达式。与time_format函数功能一致。 语法:date_format(expr, format) 表45 参数说明 参数名称 描述 类型 是否必选 expr 日期和时间表达式,格式为yyyy-MM-dd HH:mm:ss.SSS String 是 format 时间格式 String 是 返回值类型:String类型 示例:SELECT DATE_FORMAT(current_timestamp(),'%H%i') 表46 查询分析结果 类型 场景 查询语句 DATE_FORMAT(current_timestamp(),'%H%i') 返回结果 1432 format描述: %a Abbreviation for the week. For example, Sun and Sat. %b Abbreviation of the month. For example, Jan and Dec. %c Month. Numeral type. Range: 1-12. %D Day of the month. The value must be suffixed, for example, 0th, 1st, 2nd, and 3rd. %d Day of the month. The value ranges from 01 to 31 in decimal notation. %e Day of the month. The value ranges from 1 to 31 in decimal notation. %H Hour, 24-hour system. %h Hour, 12-hour system. %i Minute. Numeral type. Range: 00–59. %j Day of the year. The value ranges from 001 to 366. %k Hour. The value ranges from 0 to 23. %l Hour. The value ranges from 1 to 12. %M The English expression of the month, for example, January, December. %m Month. Numeral format. The value ranges from 01 to 12. %p AM and PM. %r Time in the 12-hour format. The format is hh:mm:ss AM/PM. %S Indicates the second. The value ranges from 00 to 59. %s Indicates the second. The value ranges from 00 to 59. %T Time, in the 24-hour format of hh:mm:ss. %v The first week of the year, Monday is the first day of the week. The value ranges from 01 to 53. %W The name of the day of the week. For example, Sunday and Saturday. %w Day of the week. Sunday is day 0. %Y A 4-digit year, for example, 2020. %y A 2-digit year, for example, 20. %% Escape character for%.
  • time_shift函数 将时间戳expr移动一个Period(步长时间)。Period可以是任何ISO8601的Period。 语法:time_shift(expr, period, step, [timezone]) 表37 参数说明 参数名称 描述 类型 是否必选 expr 日期和时间表达式,格式为yyyy-MM-dd HH:mm:ss.SSS String 是 period ISO8601的周期 String 是 step 步长 Integer 是 timezone 时区 String 否 返回值类型:String类型 示例:SELECT TIME_SHIFT('2023-04-22 15:31:30.000', 'P1D', 5), TIME_SHIFT('2023-04-22 15:31:30.000', 'P1D', 5, 'Asia/Shanghai') 表38 查询分析结果 类型 场景1 场景2 查询语句 TIME_SHIFT('2023-04-22 15:31:30.000', 'P1D', 5) TIME_SHIFT('2023-04-22 15:31:30.000', 'P1D', 5, 'Asia/Shanghai') 返回结果 2023-04-27 15:31:30.000 2023-04-27 23:31:30.000
  • timezone_hour函数 计算时区的小时偏移量。 语法:timezone_hour(expr) 表39 参数说明 参数名称 描述 类型 是否必选 expr 日期和时间表达式,格式为yyyy-MM-dd HH:mm:ss.SSS TIMEZONE String 否 返回值类型:Integer类型 示例:SELECT TIMEZONE_HOUR('2023-04-22 15:31:30.000 Europe/Rome') 表40 查询分析结果 类型 场景 查询语句 TIMEZONE_HOUR('2023-04-22 15:31:30.000 Europe/Rome') 返回结果 1
  • ceil函数 使用时间单位对时间戳进行四舍五入,单位可以是SECOND、MINUTE、 HOUR、 DAY、 WEEK、 MONTH、 QUARTER或 YEAR。 语法:ceil(expr, unit) 表33 参数说明 参数名称 描述 类型 是否必选 expr 日期和时间表达式,格式为yyyy-MM-dd HH:mm:ss.SSS String 是 unit 时间单位 String 是 返回值类型:String类型 示例:SELECT CEIL('2023-04-20 11:28:31.770', 'DAY') 表34 查询分析结果 类型 场景 查询语句 CEIL ('2023-04-20 11:28:31.770', 'DAY') 返回结果 2023-04-21 00:00:00.000
  • floor函数 使用时间单位对时间戳进行向下舍入,单位可以是SECOND、MINUTE、 HOUR、 DAY、 WEEK、 MONTH、 QUARTER或 YEAR。 语法:floor(expr, unit) 表35 参数说明 参数名称 描述 类型 是否必选 expr 日期和时间表达式,格式为yyyy-MM-dd HH:mm:ss.SSS String 是 unit 时间单位 String 是 返回值类型:Strin类型 示例:SELECT FLOOR('2023-04-20 11:28:31.770', 'DAY') 表36 查询分析结果 类型 场景 查询语句 FLOOR('2023-04-20 11:28:31.770', 'DAY') 返回结果 2023-04-20 00:00:00.000
  • to_unixtime函数 将时间戳类型的日期和时间表达式转换为UNIX时间戳。与timestamp_to_mills函数用法一致。 语法:to_unixtime(expr) 表23 参数说明 参数名称 描述 类型 是否必选 expr 日期和时间表达式,格式为yyyy-MM-dd HH:mm:ss.SSS String 是 返回值类型:Long类型 示例:SELECT TO_UNIXTIME('2023-04-12 16:15:22.285') 表24 查询分析结果 类型 场景 查询语句 TO_UNIXTIME('2023-04-12 16:15:22.285') 返回结果 1681287322285
  • time_floor函数 向下舍入时间戳,将其作为新的时间戳返回。Period可以是任何ISO8601的周期,如P3M(季度)或PT12H(半天)。指定Origin作为时间戳,以设置舍入的参考时间。例如,TIME_FLOOR(time, 'PT1H', '2016-06-27 00:30:00')测量的小时周期从00:30-01:30而不是00:00-01:00。时区(如果提供)应该是时区名称,如“America/Los_Angeles”或偏移量,如“-08:00”。此功能与floor_to类似,但更灵活。 语法:time_floor(expr, period, [origin, [timezone]]) origi和timezone加中括号表示可选,非必填。 表29 参数说明 参数名称 描述 类型 是否必选 expr 日期和时间表达式,格式为yyyy-MM-dd HH:mm:ss.SSS String 是 period ISO8601的周期 String 是 origin 原始时间,格式为yyyy-MM-dd HH:mm:ss.SSS String 否 timezone 时区 String 否 返回值类型:String类型 示例1:SELECT TIME_FLOOR('2023-04-23 06:46:40.000', 'PT2H') 表30 查询分析结果 类型 场景 查询语句 TIME_FLOOR('2023-04-23 06:46:40.000', 'PT2H') 返回结果 2023-04-23 06:00:00.000 示例2:SELECT TIME_FLOOR('2023-04-25 06:53:45.000', 'PT2H', '2012-12-18 01:20:21.000') 表31 查询分析结果 类型 场景 查询语句 TIME_FLOOR('2023-04-25 06:53:45.000', 'PT2H', '2012-12-18 01:20:21.000') 返回结果 2023-04-25 05:20:21.000 示例3:SELECT TIME_FLOOR('2023-04-23 06:46:40.000', 'PT2H', '2012-12-18 04:11:11.000', 'Europe/Rome') 表32 查询分析结果 类型 场景 查询语句 TIME_FLOOR('2023-04-25 09:44:35.000', 'PT2H', '2012-12-18 04:11:11.000', 'Europe/Rome') 返回结果 2023-04-25 08:11:11.000
  • time_ceil函数 将时间戳舍入,将其作为新的时间戳返回。Period可以是任何ISO8601的周期,如P3M(季度)或PT12H(半天)。指定Origin作为时间戳,以设置舍入的参考时间。例如,TIME_CEIL(time, 'PT1H', '2016-06-27 00:30:00')测量的小时周期从00:30-01:30而不是00:00-01:00。时区(如果提供)应该是时区名称,如“America/Los_Angeles”或偏移量,如“-08:00”。此功能与ceil_to类似,但更灵活。 语法:time_ceil(expr, period, [origin, [timezone]]) origi和timezone加中括号表示可选,非必填。 表25 参数说明 参数名称 描述 类型 是否必选 expr 日期和时间表达式,格式为yyyy-MM-dd HH:mm:ss.SSS String 是 period ISO8601的周期 String 是 origin 原始时间,格式为yyyy-MM-dd HH:mm:ss.SSS String 否 timezone 时区 String 否 返回值类型:String类型 示例1:SELECT TIME_CEIL('2023-04-23 06:46:40.000', 'PT2H') 表26 查询分析结果 类型 场景 查询语句 TIME_CEIL('2023-04-23 06:46:40.000', 'PT2H') 返回结果 2023-04-23 08:00:00.000 示例2:SELECT TIME_CEIL('2023-04-25 06:53:45.000', 'PT2H', '2012-12-18 01:20:21.000') 表27 查询分析结果 类型 场景 查询语句 TIME_CEIL('2023-04-25 06:53:45.000', 'PT2H', '2012-12-18 01:20:21.000') 返回结果 2023-04-25 07:20:21.000 示例3:SELECT TIME_CEIL('2023-04-25 09:44:35.000', 'PT2H', '2012-12-18 04:11:11.000', 'Europe/Rome') 表28 查询分析结果 类型 场景 查询语句 TIME_CEIL('2023-04-25 09:44:35.000', 'PT2H', '2012-12-18 04:11:11.000', 'Europe/Rome') 返回结果 2023-04-25 10:11:11.000 Period描述: period的格式应为P[n]Y[n]M[n]DT[n]H[n]M[n]S或P[n]W。在这些表示中,【n】是日期和时间元素的数量。不需要前导零,但每个元素的最大位数应由通信各方商定。大写字母P、Y、M、W、D、T、H、M和S是每个日期和时间元素的指示符,不被替换。 P是放置在持续时间表示的开始处的持续时间指示符(对于期间)。 Y是日历年数值之后的年指示符。 M是日历月数值之后的月份指示符。 W是周数值之后的周指示符。 D是日历天数值之后的日期指示符。 T是表示的时间分量之前的时间指示符。 H是小时数值之后的小时指示符。 M是分钟指示符,紧随分钟数的值。 S是秒数值之后的第二个指示符。 例如,“P3Y6M4DT12H30M5S”表示“三年六个月四天十二小时三十分五秒”的持续时间。 更多信息,请访问https://en.wikipedia.org/wiki/ISO_8601
  • timestamp_to_mills函数 将时间戳类型的日期和时间表达式转换为UNIX时间戳。 语法:timestamp_to_mills(expr) 表21 参数说明 参数名称 描述 类型 是否必选 expr 日期和时间表达式,格式为yyyy-MM-dd HH:mm:ss.SSS String类型 是 返回值类型:Long类型 示例:SELECT TIMESTAMP_TO_MILLS('2023-04-12 16:15:22.285') 表22 查询分析结果 类型 场景 查询语句 TIMESTAMP_TO_MILLS('2023-04-12 16:15:22.285') 返回结果 1681287322285
  • to_iso8601函数 将日期类型或时间戳类型的日期时间表达式转换为ISO8601格式的日期时间表达式。 语法:to_iso8601(expr) 表19 参数说明 参数名称 描述 类型 是否必选 expr 日期和时间表达式,格式为yyyy-MM-dd或yyyy-MM-dd HH:mm:ss.SSS String类型 是 返回值类型:String类型 示例:SELECT TO_ISO8601('2023-04-15'), TO_ISO8601('2023-04-15 11:13:35.954') 表20 查询分析结果 类型 场景1 场景2 查询语句 TO_ISO8601('2023-04-15') TO_ISO8601('2023-04-15 11:13:35.954') 返回结果 2023-04-15 2023-04-15T11:13:35.954Z
  • from_unixtime函数 将UNIX时间戳转换为日期和时间表达式。与mills_to_timestamp函数用法一致。 将UNIX时间戳转化为没有时区的时间戳类型的日期和时间表达式。 语法:from_unixtime(expr) 表13 参数说明 参数名称 描述 类型 是否必选 expr UNIX时间戳 Long 是 返回值类型:String 示例:SELECT FROM_UNIXTIME(1626774758000) 表14 查询分析结果 类型 场景 查询语句 FROM_UNIXTIME(1626774758000) 返回结果 2021-07-20 09:52:38.000 将UNIX时间戳转化为带时区的timestamp类型的日期和时间表达式。 语法:from_unixtime(expr, timezone) 表15 参数说明 参数名称 描述 类型 是否必选 expr UNIX时间戳 Long 是 timezone 时区 String 是 返回值类型:String类型 示例:SELECT FROM_UNIXTIME(1626774758000, 'Asia/Shanghai') 表16 查询分析结果 类型 场景 查询语句 FROM_UNIXTIME(1626774758000, 'Asia/Shanghai') 返回结果 2021-07-20 17:52:38.000 Asia/Shanghai 将UNIX时间戳expr转换为具有时区的时间戳类型的日期和时间表达式。表达式中,hour和minute表示时区偏移量。 语法:from_unixtime(expr, hour, minutes) 表17 参数说明 参数名称 描述 类型 是否必选 expr UNIX时间戳 Long 是 hour 小时 Integer 是 minute 分钟 Integer 是 返回值类型:String 示例:SELECT FROM_UNIXTIME(1626774758000, -2, 0) 表18 查询分析结果 类型 场景 查询语句 FROM_UNIXTIME(1626774758000, -2, 0) 返回结果 2021-07-20 07:52:38.000 -02:00
  • from_iso8601_timestamp函数 将ISO8601格式的日期和时间表达式转化为timestamp类型的日期和时间表达式,格式为YYYY-MM-DD HH:MM:SS.Ms Time_zone。 语法:from_iso8601_timestamp(expr) 表5 参数说明 参数名称 描述 类型 是否必选 expr ISO8601格式的日期和时间表达式 String 是 返回值类型:timestamp类型。 示例:SELECT FROM_ISO8601_TIMESTAMP('2018-05-14T11:51:50.153+08:00') 表6 查询分析结果 类型 场景 查询语句 FROM_ISO8601_TIMESTAMP('2018-05-14T11:51:50.153+08:00') 返回结果 2018-05-14 11:51:50.153 +08:00
  • mills_to_timestamp函数 将UNIX时间戳转换为日期和时间表达式。 将UNIX时间戳转化为没有时区的时间戳类型的日期和时间表达式,格式为yyyy-MM-dd HH:mm:ss.SSS。 语法:mills_to_timestamp(expr) 表7 参数说明 参数名称 描述 类型 是否必选 expr UNIX时间戳 Long 是 返回值类型:String类型 示例:SELECT MILLS_TO_TIMESTAMP(1626774758000) 表8 查询分析结果 类型 场景 查询语句 MILLS_TO_TIMESTAMP(1626774758000) 返回结果 2021-07-20 09:52:38.000 将UNIX时间戳转化为带时区的timestamp类型的日期和时间表达式,格式为yyyy-MM-dd HH:mm:ss.SSS TimeZone。 语法:mills_to_timestamp(expr, timezone) 表9 参数说明 参数名称 描述 类型 是否必选 expr UNIX时间戳 Long 是 timezone 时区 String 是 返回值类型:String类型 示例:SELECT MILLS_TO_TIMESTAMP(1626774758000, 'Asia/Shanghai') 表10 查询分析结果 类型 场景 查询语句 MILLS_TO_TIMESTAMP(1626774758000, 'Asia/Shanghai') 返回结果 2021-07-20 17:52:38.000 Asia/Shanghai 将UNIX时间戳expr转换为具有时区的时间戳类型的日期和时间表达式。表达式中,hour和minute表示时区偏移量,格式为yyyy-MM-dd HH:mm:ss.SSS 时区偏移量。 语法:mills_to_timestamp(expr, hour, minutes) 表11 参数说明 参数名称 描述 类型 是否必选 expr UNIX时间戳 Long 是 hour 小时 Integer 是 minute 分钟 Integer 是 返回值类型:String类型 示例:SELECT MILLS_TO_TIMESTAMP(1626774758000, -2, 0) 表12 查询分析结果 类型 场景 查询语句 MILLS_TO_TIMESTAMP(1626774758000, -2, 0) 返回结果 2021-07-20 07:52:38.000-02:00
  • 函数列表 表1 日期和时间函数 函数 描述 current_timestamp函数 返回当前日期和时间,格式为yyyy-MM-dd HH:mm:ss.SSS from_iso8601_date函数 将ISO8601格式的日期表达式expr转换为date类型的日期表达式,格式为yyyy-MM-dd from_iso8601_timestamp函数 将ISO8601格式的日期表达式expr转换为timestamp类型的日期表达式,格式为yyyy-MM-dd HH:mm:ss.SSS mills_to_timestamp函数 将UNIX时间戳转换为日期和时间表达式。 from_unixtime函数 将UNIX时间戳转换为日期和时间表达式。与mills_to_timestamp函数用法一致。 to_iso8601函数 将日期类型或时间戳类型的日期时间表达式转换为ISO8601格式的日期时间表达式。 timestamp_to_mills函数 将时间戳类型的日期和时间表达式转换为UNIX时间戳。 to_unixtime函数 将时间戳类型的日期和时间表达式转换为UNIX时间戳。与timestamp_to_mills函数用法一致。 time_ceil函数 将时间戳舍入,将其作为新的时间戳返回。Period可以是任何ISO8601的周期,如P3M(季度)或PT12H(半天)。指定Origin作为时间戳,以设置舍入的参考时间。例如,TIME_CEIL(time, 'PT1H', '2016-06-27 00:30:00')测量的小时周期从00:30-01:30而不是00:00-01:00。时区(如果提供)应该是时区名称,如“America/Los_Angeles”或偏移量,如“-08:00”。此功能与ceil_to类似,但更灵活。 time_floor函数 向下舍入时间戳,将其作为新的时间戳返回。Period可以是任何ISO8601的周期,如P3M(季度)或PT12H(半天)。指定Origin作为时间戳,以设置舍入的参考时间。例如,TIME_FLOOR(time, 'PT1H', '2016-06-27 00:30:00')测量的小时周期从00:30-01:30而不是00:00-01:00。时区(如果提供)应该是时区名称,如“America/Los_Angeles”或偏移量,如“-08:00”。此功能与floor_to类似,但更灵活。 ceil函数 使用时间单位对时间戳进行四舍五入,单位可以是SECOND、MINUTE、 HOUR、 DAY、 WEEK、 MONTH、 QUARTER或 YEAR。 floor函数 使用时间单位对时间戳进行向下舍入,单位可以是SECOND、MINUTE、 HOUR、 DAY、 WEEK、 MONTH、 QUARTER或 YEAR。 time_shift函数 将时间戳expr移动一个Period(步长时间)。Period可以是任何ISO8601的Period。 timezone_hour函数 计算系统时区和utc时区的小时偏移量。如果提供了时区,则计算系统时区与给定时区的偏移量。 timezone_minute函数 计算系统时区和utc时区的分钟偏移量。如果提供了时区,则计算系统时区与给定时区的偏移量。 time_format函数 将时间戳类型的日期和时间表达式转换为指定格式的日期和时间表达式。 date_format函数 将时间戳类型的日期和时间表达式转换为指定格式的日期和时间表达式。 time_parse函数 将日期和时间字符串转换为指定格式的时间戳类型的日期和时间表达式。 date_parse函数 将日期和时间字符串转换为指定格式的时间戳类型的日期和时间表达式。 time_extract函数 通过指定字段提取日期时间表达式的日期或时间部分。EPOCH, SECOND, MINUTE, HOUR, DAY(月的日), DOW(周的日), DOY(年的日), WEEK(年周), MONTH(1到12), QUARTER(1到4),或YEAR,时区(如果提供)应为时区名称,如"America/Los_Angeles"或偏移量,如"-08:00" date_trunc函数 根据您指定的时间单位截断日期和时间表达式,并以毫秒、秒、分钟、小时、天、月或年为单位对齐。 date_diff函数 返回时间戳expr1和时间戳expr2之间的单位数(有符号)。 current_date函数 返回当前日期,格式是“yyyy-MM-dd”。 now函数 返回当前日期和时间,格式是“yyyy-MM-dd HH:mm:ss.SSS”。功能与current_timestamp一致 date_add函数 给时间加上给定的时间间隔 current_time函数 返回当前时间,格式为HH:mm:ss.SSSSSS。 current_timezone函数 返回当前时区。 localtime函数 返回本地时间。 localtimestamp函数 返回本地的日期和时间。 year_of_week函数 返回目标日期在ISO周日历中的年份。year_of_week函数等同于yow函数。 yow函数 返回目标日期在ISO周日历中的年份。year_of_week函数等同于yow函数。 time_series函数 用于补全您查询时间窗口内缺失的数据。
  • from_iso8601_date函数 将ISO8601格式的日期表达式转化为date类型的日期表达式,格式为YYYY-MM-DD。 语法:from_iso8601_date(expr) 表3 参数说明 参数名称 描述 类型 是否必选 expr ISO8601格式的日期表达式 String 是 返回值类型:String类型 示例:SELECT FROM_ISO8601_DATE('2018-05-14') 表4 查询分析结果 类型 场景 查询语句 FROM_ISO8601_DATE('2018-05-14') 返回结果 2018-05-14
  • 示例流程 图1 给用户授权LTS权限流程 登录 统一身份认证 服务 IAM 控制台。在IAM控制台创建用户组,并授予 云日志 服务操作权限“LTS FullAccess”。详细操作请参考创建用户组并授权。 选择“LTS FullAccess”,由于该策略有依赖,除了勾选LTS FullAccess外,还需要在同项目中勾选依赖的策略:Tenant Guest、以及“全局区域 对象存储服务 项目”中勾选依赖的策略:Tenant Administrator。 在IAM控制台创建用户,并将其加入步骤1中创建的用户组。详细操作请参考创建用户并加入用户组。 使用新创建的用户登录控制台,切换至授权区域,进入云日志服务控制台可以正常操作并使用LTS。详细操作请参考用户登录并验证权限。
  • 日志搜索与分析概述 日志搜索与分析是运维中不可或缺的一环。日志接入成功后,云日志服务(LTS)支持对采集成功的日志数据进行搜索与分析。通过合理的日志收集、高效的搜索方法和专业的分析工具,可以实现对系统或应用的全面监控和精细化管理。 执行搜索与分析前,需要将上报的日志进行结构化配置和索引配置,因为结构化后数据具有严格的长度和格式,方便进行搜索与分析。详细请参考设置云端结构化解析日志和设置LTS日志索引配置。 结构化完成后,使用云日志服务(LTS)提供的搜索语法用于设置搜索条件,帮助您更有效地搜索日志。详细请参考搜索日志。 云日志服务(LTS)支持使用SQL分析语法,对结构化后的日志字段进行 日志分析 ,通过统计图表的方式对查询和分析的结果进行可视化展示。详细请参考分析LTS日志。 父主题: 日志搜索与分析(默认推荐)
  • compare函数 用于对比当前时间周期内的计算结果与n秒之前时间周期内的计算结果。 语法:compare(x, n) 对比当前时间周期内的计算结果与n1、n2、n3秒之前时间周期内的计算结果。 语法:compare(x, n1, n2, n3...) 表2 参数说明 参数名称 描述 类型 是否必选 x 待同比表达式。 double 是 n? 时间窗口,单位为秒。例如3600(1小时)、86400(1天)、604800(1周)、31622400(1年)。 long 是 返回类型 JSON数组。格式为[当前计算结果,n秒前的计算结果,当前计算结果与n秒前计算结果的比值]。 示例说明 计算当前1小时和昨天同时段的访问量比值。 选择查询和分析的时间范围为1小时(整点时间),并执行如下查询和分析语句。其中86400表示当前时间减去86400秒(1天)。 SELECT compare(PV, 86400) FROM (SELECT count(*) AS PV ) 查询和分析结果。 图1 查询和分析结果 5994.0表示当前1小时(例如2021-01-02 00:00:00~2021-01-02 01:00:00)的网站访问量。 6000.0表示昨天同时段(例如2021-01-01 00:00:00~2021-01-01 01:00:00)的网站访问量。 0.999表示当前1小时与昨天同时段的网站访问量比值。 分列显示查询和分析结果。 SELECT diff[1] as "today", diff[2] as "yesterday", diff[3] as "ratio" FROM(SELECT compare(pv, 86400) AS diff FROM (SELECT count(*) AS pv )) 图2 查询和分析结果
  • ts_compare函数 ts_compare函数用于对比当前时间周期内的计算结果与n秒之前时间周期内的计算结果。 ts_compare函数必须按照时间列进行分组(GROUP BY)。 语法格式 对比当前时间周期内的计算结果与n秒之前时间周期内的计算结果。 ts_compare(x, n) 对比当前时间周期内的计算结果与n1、n2、n3秒之前时间周期内的计算结果。 ts_compare(x, n1, n2, n3...) 表3 环比函数参数说明 参数 说明 x 参数值为double类型或long类型。 n 时间窗口,单位为秒。例如3600(1小时)、86400(1天)、604800(1周)、31622400(1年)。 返回类型 JSON数组。格式为[当前计算结果, n秒前的计算结果, 当前计算结果与n秒前计算结果的比值, n秒前的UNIX时间戳]。 示例说明 环比今天3小时与昨天3小时的网站访问量。 选择查询和分析的时间范围为今天某3小时,并执行如下查询和分析语句。其中86400表示当前时间减去86400秒(1天),date_trunc('hour',__time)表示使用date_trunc函数将时间对齐到小时。 查询和分析语句 * | SELECT t_time, ts_compare(PV, 86400) AS data FROM( SELECT to_unixtime(date_trunc('hour', __time)) AS t_time, count(*) AS PV GROUP BY t_time ORDER BY t_time ) GROUP BY t_time 查询和分析结果 t_time data 2021-10-26T06:00:00.000Z [159.0,224.0,0.7098214285714286,1.6351416E9] 2021-10-26T07:00:00.000Z [100.0,148.0,0.6756756756756757,1.6351452E9] 2021-10-26T08:00:00.000Z [100.0,100.0,1.0, 1.6016544E9, 1.6351488E9]
  • str_uuid 随机生成UUID。 函数格式 str_uuid(lower=true) 参数说明 参数名称 参数类型 是否必填 说明 lower Boolean 否 生成的UUID中的字母是否是小写。默认为true表示小写。 返回结果 true/false。 函数示例 测试数据:无 加工规则 e_set("UUID", str_uuid()) 加工结果 UUID: 1acf7e1d-5a6b-4267-b7c1-874c8b70745d
  • str_istitle 判断字符串中所有单词的拼写首字母是否为大写,且其他字母为小写。 函数格式 str_istitle(value) 参数说明 参数名称 参数类型 是否必填 说明 value 任意(自动转为String) 是 需要被检测的字符串。 返回结果 true/false。 函数示例 测试数据 { "key":"Lts Is A Log Service" } 加工规则 e_set("str_istitle", str_istitle(v("key"))) 加工结果 key: Lts Is A Log Service str_istitle: true
  • str_islower 判断字符串是否由小写字母组成。 函数格式 str_islower(value) 参数说明 参数名称 参数类型 是否必填 说明 value 任意(自动转为String) 是 需要被检测的字符串。 返回结果 true/false。 函数示例 测试数据 { "key": "lower" } 加工规则 e_set("str_islower", str_islower(v("key"))) 加工结果 key: lower str_islower: true
  • str_isupper 判断字符串中所有的字母是否都为大写。 函数格式 str_isupper(value) 参数说明 参数名称 参数类型 是否必填 说明 value 任意(自动转为String) 是 需要被检测的字符串。 返回结果 true/false。 函数示例 测试数据 { "key":"LTS" } 加工规则 e_set("str_isupper", str_istitle(v("key"))) 加工结果 key: LTS str_isupper: true
  • str_isnumeric 判断字符串是否由数字组成。 函数格式 str_isnumeric(value) 参数说明 参数名称 参数类型 是否必填 说明 value 任意(自动转为String) 是 需要被检测的字符串。 返回结果 true/false。 函数示例 测试数据 { "key": "123W" } 加工规则 e_set("str_isnumeric", str_isnumeric(v("key"))) 加工结果 key: 123W str_isnumeric: false
共100000条