MySQL:SQL Query从Date / Timestamp列返回Date

时间:2011-04-06 14:27:48

标签: mysql sql string

在表格中我有一个存储的字符串列“MM / DD / YYYY HH:MM:SS”,我正在寻找一个只返回“MM / DD / YYYY”部分的查询。

有什么想法吗?

4 个答案:

答案 0 :(得分:3)

如果列类型为charvarchar,则

SELECT LEFT(colname, 10)

就足够了。 如果是datetime类型,请尝试

SELECT DATE_FORMAT(colname , "%d/%m/%Y")

答案 1 :(得分:1)

你应该使用MySQL DATETIME字段而不是字符串字段。这将允许您应用日期和时间函数,这在处理时态数据时非常有用。

在您的情况下,由于您的数据是字符串类型,而不是MySQL Isodate格式(YYYY-MM-DD),因此您只能使用字符串函数(如SUBSTRING()及其特化(LEFT,...))

http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html 日期和时间功能概述

http://dev.mysql.com/doc/refman/5.5/en/string-functions.html 字符串函数

答案 2 :(得分:0)

我认为你可以使用子串!!!

SELECT SUBSTRING(TimeStamp,7,10);

答案 3 :(得分:0)

如果是字符串,请使用SUBSRT()LEFT()来提取所需的部分,但将其存储为数据时类型是明智的