You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MySQL中如何将YYYY-MM-DD HH:MM:SS转换为HH:MM:SS并生成新列?

提取时间部分生成新列的SQL语句

假设你的表名为your_table,以下是不同主流SQL数据库对应的查询语句,用于从vedu_time列中提取HH:MM:SS格式的时间,生成新列ganta_time:

MySQL/MariaDB

使用TIME()函数直接提取时间部分:

SELECT
  vedu_time,
  TIME(vedu_time) AS ganta_time
FROM your_table;

如果需要修改表结构,永久添加ganta_time列并填充数据:

-- 先添加列
ALTER TABLE your_table ADD COLUMN ganta_time TIME;
-- 填充数据
UPDATE your_table SET ganta_time = TIME(vedu_time);

PostgreSQL

使用TO_CHAR()函数格式化时间:

SELECT
  vedu_time,
  TO_CHAR(vedu_time, 'HH24:MI:SS') AS ganta_time
FROM your_table;

永久添加并填充列:

ALTER TABLE your_table ADD COLUMN ganta_time TIME;
UPDATE your_table SET ganta_time = vedu_time::TIME;

SQL Server

使用CONVERT()函数指定格式提取:

SELECT
  vedu_time,
  CONVERT(VARCHAR(8), vedu_time, 108) AS ganta_time
FROM your_table;

永久添加并填充列:

ALTER TABLE your_table ADD ganta_time TIME;
UPDATE your_table SET ganta_time = CONVERT(TIME, vedu_time);

效果示例

vedu_timeganta_time
2021-12-01 07:12:3007:12:30
2021-12-01 07:20:4407:20:44
2021-12-01 13:11:2613:11:26

内容的提问来源于stack exchange,提问作者SRash

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 16:30:58