日期时间到日期的 Mysql 转换未反射(reflect)在输出中

标签 mysql date datetime casting

我有一个表,其中有一列是日期时间类型。我只是尝试使用两个查询将其强制转换为日期,这两个查询是

  1. 从 attendance_student 中选择类型转换(attendance_student.created_date 作为日期)
  2. 从 attendance_student 中选择日期(attendance_student.created_date)

但是两次我得到的输出都是

7/16/2015 12:00:00 AM
7/16/2015 12:00:00 AM
7/16/2015 12:00:00 AM
7/16/2015 12:00:00 AM
7/16/2015 12:00:00 AM
7/16/2015 12:00:00 AM
7/16/2015 12:00:00 AM
7/16/2015 12:00:00 AM

为什么我不能得到日期格式的输出。

这是我的表格脚本

CREATE TABLE `attendance_student` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `attendance_id` int(11) DEFAULT NULL,
  `is_present` tinyint(1) DEFAULT '1',
  `created_by` varchar(50) DEFAULT NULL,
  `created_date` datetime DEFAULT NULL,
  `modified_by` varchar(50) DEFAULT NULL,
  `last_modified_date` datetime DEFAULT NULL,
  `is_on_leave` tinyint(1) DEFAULT NULL,
  `student_id` int(11) DEFAULT NULL,
  `is_cocurricular_leave` tinyint(1) DEFAULT '0',
  `is_activity_attendance` tinyint(1) DEFAULT '0',
  `activity_id` int(11) DEFAULT NULL,
  `is_sms_sent` tinyint(2) DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `idx_attendance_attendance_student` (`attendance_id`) USING BTREE,
  KEY `id_student_attendance_student` (`student_id`) USING BTREE,
  KEY `fk_activity_student_attendance_id` (`activity_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

最佳答案

这是预期的,因为 DATE 函数返回与给定日期时间相同的日期,时间为 00:00 或 12 小时格式的 12:00 AM。

您可以使用 DATE_FORMAT 将日期部分作为字符串获取:

select date_format(created_date, '%Y-%m-%d') as created_date
from attendance_student

关于日期时间到日期的 Mysql 转换未反射(reflect)在输出中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42452971/

相关文章:

PHP Ajax通过Bootstrap Modal更新MySQL数据

java - 如何将毫秒转换为相应的日期?

c# - 根据 "/"拆分字符串

javascript - DateTime 奇怪的转换

php - 使用php时order by str_to_date查询返回错误

php - 在 php 形式中使用引号和撇号

具有 2 个内部连接的 PHP PDO。如何在php中区分它们

mysql - 按时间选择时间戳忽略日期

javascript - 将 Javascript 日期解析为 C# DateTime,FF 数据不同于 Chrome 日期

vb.net - 将表示 24H 时间的字符串转换为 12H 时间 VB.NET