mysql - SQL EXTRACT 返回不带冒号的 HOUR_MINUTE
问题描述
我正在尝试格式化我的时间戳日期,以便从中仅获取小时和分钟。问题是返回的格式是奇怪的“825-2100”,而它应该是“8:25-21:00”。所以输出应该带有冒号,但没有。
这是我正在做的选择:
CASE WHEN (TRUE) then CONCAT('Aeg ',EXTRACT(HOUR_MINUTE FROM fp.valid_from), '-', EXTRACT(HOUR_MINUTE FROM fp.valid_to) else 0 end,
为什么我得到没有冒号的格式?
解决方案
format
如果你想要一个字符串,请使用。此外,所有分支都CASE
应该返回一个字符串(或NULL
):
(CASE WHEN (TRUE)
THEN CONCAT('Aeg ',
FORMAT(fp.valid_from, '%H:%i%'),
'-'
FORMAT(fp.valid_to, '%H:%i%')
)
ELSE ''
END)
推荐阅读
- excel - 在excel中将F10.11转换为F1011
- r - 在 R 中绘制具有置信区间的系数
- java - 在另一个标签内解析 json 标签
- ruby-on-rails - puma 工人与单独的 ec2 实例
- java - 如何在 MobileApplication 和 Application 中获得相似的 CSS 外观?
- splunk - 在某个点之后过滤掉部分文件路径
- python-2.7 - 如何从变量的名称获取它在python中的属性
- ruby - Ruby 为控制器的数组动态命名
- mysql - MySQL AUTO_INCREMENT 在任何 INSERT 查询上都不会增加
- google-sheets - 表格:如何在 1 前面加上我们的电话号码