云服务器内容精选

  • yow函数 返回目标日期在ISO周日历中的年份。year_of_week函数等同于yow函数。 语法:yow(expr) 表66 参数说明 参数名称 描述 类型 是否必选 expr 时间表达式,格式为yyyy-MM-dd HH:mm:ss.SSS或yyyy-MM-dd String 是 返回值类型:Integer类型 示例:SELECT YOW('2023-09-22 14:47:59.325'), YOW('2023-09-22') 表67 查询分析结果 类型 场景1 场景2 查询语句 YOW('2023-09-22 14:47:59.325') YOW('2023-09-22') 返回结果 2023 2023
  • time_series函数 用于补全您查询时间窗口内缺失的数据。time_series函数必须搭配GROUP BY语法和ORDER BY语法使用。 语法:time_series(x, window_time, format, padding_data) 表68 参数说明 参数名称 描述 类型 是否必选 x 原始字段。 long或date 是 window_time 窗口大小,单位为s(秒)、m(分)、h(小时)、d(天)。例如2h、5m、3d。 String 是 format 返回结果的时间格式。 String 是 padding_data 补全的内容。包括:0:将缺失的值设置为0。null:将缺失的值设置为null。last:将缺失的值设置了上一个时间点对应的值。next:将缺失的值设置了下一个时间点对应的值。avg:将缺失的值设置为前后两个时间点的平均值。 String 是 返回值类型:String 示例:select time_series(__time__, '1d', 'HH:mm:ss','0') as time, count(*) as count group by time order by time asc 表69 查询分析结果 类型 场景 查询语句 time_series(__time__, '1d', 'HH:mm:ss','0') as time, count(*) as count group by time order by time asc 返回结果
  • date_diff函数 返回时间戳expr1和时间戳expr2之间的单位数(有符号)。 语法:date_diff(unit, expr1, expr2) 表55 参数说明 参数名称 描述 类型 是否必选 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') 表56 查询分析结果 类型 场景 查询语句 DATE_DIFF('MONTH', NOW(),'2022-11-20 12:20:30.123') 返回结果 4
  • date_add函数 给时间加上给定的时间间隔。 语法:date_add(unit, n, expr) 表59 参数说明 参数名称 描述 类型 是否必选 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') 表60 查询分析结果 类型 场景 查询语句 DATE_ADD('minute', 7, '2023-05-15 16:14:00.569') 返回结果 2023-05-15 16:21:00.569
  • date_trunc函数 根据您指定的时间单位截断日期和时间表达式,并以毫秒、秒、分钟、小时、天、月或年为单位对齐。 语法:date_trunc(unit, expr) 表53 参数说明 参数名称 描述 类型 是否必选 expr 日期和时间表达式,格式为yyyy-MM-dd HH:mm:ss.SSS String 是 unit 时间单位 String 是 返回值类型:Long类型 示例:SELECT DATE_TRUNC('year', '2022-11-20 12:20:30.123') 表54 查询分析结果 类型 场景 查询语句 DATE_TRUNC('year', '2022-11-20 12:20:30.123') 返回结果 2022-01-01 00:00:00.000
  • year_of_week函数 返回目标日期在ISO周日历中的年份。year_of_week函数等同于yow函数。 语法:year_of_week(expr) 参数说明: 参数名称 描述 类型 是否必选 expr 时间表达式,格式为yyyy-MM-dd HH:mm:ss.SSS或yyyy-MM-dd String 是 返回值类型:Integer类型 示例:SELECT YEAR_OF_WEEK('2023-09-22 14:47:59.325'), YEAR_OF_WEEK('2023-09-22') 表65 查询分析结果 类型 场景1 场景2 查询语句 YEAR_OF_WEEK('2023-09-22 14:47:59.325') YEAR_OF_WEEK('2023-09-22') 返回结果 2023 2023
  • 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
  • date_parse函数 将日期和时间字符串转换为指定格式的时间戳类型的日期和时间表达式。 语法:date_parse(expr, pattern) 表49 参数说明 参数名称 描述 类型 是否必选 expr 日期和时间表达式。 String 是 pattern 日期和时间表达式的转换格式 String 是 返回值类型:timestamp类型 示例:SELECT DATE_PARSE('1996-03-22 14:32:00.000','%Y-%m-%d %h:%i') 表50 查询分析结果 类型 场景 查询语句 DATE_PARSE('1996-03-22 14:32:00.000','%Y-%m-%d %h:%i') 返回结果 1996-03-22 14:32:00.000 pattern在设置时,如果设置了分钟,那么就必须同时配置分钟之前的年、月、日和时。
  • date_format函数 将时间戳类型的日期和时间表达式转换为指定格式的日期和时间表达式。与time_format函数功能一致。 语法:date_format(expr, format) 表46 参数说明 参数名称 描述 类型 是否必选 expr 日期和时间表达式,格式为yyyy-MM-dd HH:mm:ss.SSS String 是 format 时间格式 String 是 返回值类型:String类型 示例:SELECT DATE_FORMAT(current_timestamp(),'%H%i') 表47 查询分析结果 类型 场景 查询语句 DATE_FORMAT(current_timestamp(),'%H%i') 返回结果 1432 format参数说明: %a:星期的缩写。例如Sun、Sat。 %b:月份的缩写。例如Jan、Dec。 %c:月份。数值类型,取值范围为1~12。 %D:每月的第几天。需加上后缀,例如0th、1st、2nd、3rd。 %d:每月的第几天。十进制格式,取值范围为01~31。 %e:每月的第几天。十进制格式,取值范围为1~31。 %H:小时,24小时制。 %h:小时,12小时制。 %i:分钟。数值类型,取值范围为00~59。 %j:每年的第几天。取值范围为001~366。 %k:小时。取值范围为0~23。 %l:小时。取值范围为1~12。 %M:月份的英文表达,例如January、December。 %m:月份。数值格式,取值范围为01~12。 %p:AM、PM。 %r:时间。12小时制,格式为hh:mm:ss AM/PM。 %S:秒。取值范围为00~59。 %s:秒。取值范围为00~59。 %f:毫秒。取值范围为000~999。 %T:时间。24小时制,格式为hh:mm:ss。 %v:每年的第几周,星期一是一周的第一天。取值范围为01~53。 %W:星期几的名称。例如Sunday、Saturday。 %Y:4位数的年份。例如2020。 %y:2位数的年份。例如20。 %%:%的转义字符。
  • 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) 表51 参数说明 参数名称 描述 类型 是否必选 expr 日期和时间表达式,格式为yyyy-MM-dd HH:mm:ss.SSS String 是 unit 时间单位 String 是 返回值类型:Long类型 示例:SELECT TIME_EXTRACT('2023-05-05','YEAR') 表52 查询分析结果 类型 场景 查询语句 TIME_EXTRACT('2023-05-05','YEAR') 返回结果 2023
  • 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
  • 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
  • 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
  • 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