MySQL date format(MySQL日期格式)
问题描述
当我在 mysql 中创建一个表并创建一个 date 类型的字段时,它存储的日期类似于 0000-00-00.是否可以将格式更改为d-m-Y"?
When I make a table and create a field of type date in mysql, it stores date like 0000-00-00. Is it possible to change the format to 'd-m-Y'?
推荐答案
转到 MySQL 参考 - 10.5.数据类型存储要求
搜索:日期和时间类型的存储要求
日期在内部存储为一个三字节整数打包为DD + MM×32 + YYYY×16×32
但是,如果您选择一个日期列显示,它必须以某种方式显示,所以它显示为 0000-00-00.它不存储为具有该特定格式的字符(10).
But, if you select a date column for display, it has to be shown in some way, so it comes out as 0000-00-00. It is not stored as a char(10) with that specific format.
如果,为了显示,您需要查看特定格式,您可以使用 Date_Format().但是,请记住,如果您在编程工具中使用查询,这 不是您想要做的.您需要原始日期值,出于显示目的,无论您使用何种编程环境,都会有类似的格式化功能.
If, for display, you need to see a specific format, you can convert it to VARCHAR in a specific format using Date_Format(). However, bear in mind that if you are using the query in a programming tool, this is not what you want to do. You want the raw date value, for display purposes, there will be a similar formatting function from whatever programming environment you use.
从 DATE_FORMAT 中的参考可以看出,您需要使用 '%d-%m-%Y',例如
As you can see from the reference in DATE_FORMAT, you will want to use '%d-%m-%Y', e.g.
SELECT col1, col2, DATE_FORMAT(datecolumn, '%d-%m-%Y') AS datecolumn, more1...
FROM sometable
....
这篇关于MySQL日期格式的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:MySQL日期格式
基础教程推荐
- 在 SQL 中连接多个表 2021-01-01
- SQL 效率:WHERE IN 子查询 vs. JOIN 然后 GROUP 2021-01-01
- 将 SQL Server DateTime 列迁移到 DateTimeOffset 2021-01-01
- 如何使用 mysql.connector 禁用查询缓存 2022-01-01
- SQL Server 实例在登录协商期间返回无效或不受支持的协议版本 2021-01-01
- SQL:使用来自具有相同列名的两个表中的数据... 2021-01-01
- 是否可以执行按位分组功能? 2021-01-01
- 无法解决整理冲突 2021-01-01
- 需要 MySQL 5.1 中的抽象触发器来更新审计日志 2021-01-01
- SSMS 中的权限问题:“对象 'extended_properties'、数据库 'mssqlsystem_resource'、... 错误 229)上的 SELECT 权限被拒绝" 2022-01-01
