登录
首页 >  数据库 >  MySQL

MySQL 查询中别名 temp 为何返回 NULL?

时间:2024-11-25 20:09:50 482浏览 收藏

在数据库实战开发的过程中,我们经常会遇到一些这样那样的问题,然后要卡好半天,等问题解决了才发现原来一些细节知识点还是没有掌握好。今天golang学习网就整理分享《MySQL 查询中别名 temp 为何返回 NULL?》,聊聊,希望可以帮助到正在努力赚钱的你。

MySQL 查询中别名 temp 为何返回 NULL?

mysql 查询中别名 temp 返回 null

问题:在 mysql 查询中,使用以下语句查询别名为 temp 的列时,却返回了 null:

select str_to_date(plan_start_time, '%h:%i:%s') as temp,plan_start_time from base_stop_calendar

背景信息:

  • temp 是别名,并非截图错误。
  • plan_start_time 是 varchar 类型。

解答:

在提供的 sql 语句中,格式化字符 "%h" 用于表示小时(12 小时制)。然而,plan_start_time 列中存储的是 24 小时制的时间,因此使用 "%h" 会导致格式化失败,从而返回 null。

解决方案:

要正确地格式化计划开始时间,应该使用大写字母 "h" 来表示 24 小时制的时间。以下是修改后的 sql 语句:

SELECT STR_TO_DATE(plan_start_time, '%H:%i:%s') as temp,plan_start_time from base_stop_calendar

使用此语句后,别名 temp 将返回格式正确的日期和时间。

到这里,我们也就讲完了《MySQL 查询中别名 temp 为何返回 NULL?》的内容了。个人认为,基础知识的学习和巩固,是为了更好的将其运用到项目中,欢迎关注golang学习网公众号,带你了解更多关于的知识点!

相关阅读
更多>
最新阅读
更多>
课程推荐
更多>