我正在努力弄清楚如何将字符串列转换为间隔数据类型。但我的问题是,我只想将其“小时”到“秒”部分反映在表格上,而不是“Y-M D H:M:S”。我需要它能够在 tableau 中正确创建我的可视化。我如何才能让“H:M:S”反映在桌子上?
这是我的带有注释的代码,它确实给了我时间间隔,但我不知道如何将小时转换为秒:
/将数据类型从字符串更新为间隔/
/第 1 步 - 更改列名称以便稍后转储/ 修改表
scenic-arc-373908.Cyclistic_Data.04_2022
将列ride_length重命名为ride_length_to_dump
/第 2 步 - 添加具有原始名称和所需数据类型的新列名称/ 更改表
scenic-arc-373908.Cyclistic_Data.04_2022
添加列ride_length INTERVAL
/第 3 步 - 删除新列,因为我必须正确设置间隔/ 更改表
scenic-arc-373908.Cyclistic_Data.04_2022
如果存在,则删除列ride_length
/第 4 步 - 更新表以将所有信息从ride_length_to_dump 获取到ride_length/ 更新
scenic-arc-373908.Cyclistic_Data.04_2022
SETride_length = CAST(ride_length_to_dump AS INTERVAL 'H')
其中ride_length_to_dump 不为空
导入日期时间
input_str = "3 天 12:30:45"
time_portion = datetime.datetime.strptime(input_str, "%d 天 %H:%M:%S").time()
打印(时间部分)
12:30:45
sql:
选择 SUBSTRING(time_interval_column, CHARINDEX(' ', time_interval_column) + 1, LEN(time_interval_column)) 来自你的表名;
注意: 此 SQL 查询将从字符串列中提取时间部分。根据您的数据库系统和列名称调整查询。