我有一个string列作为date,我想把它选为DATE.

可能吗?

我的示例数据格式是:

month/day/year->12/31/2011

推荐答案

正如MySQL Using a string column with date text as a date field岁时所说的,你可以做到

SELECT  STR_TO_DATE(yourdatefield, '%m/%d/%Y')
FROM    yourtable

您还可以在WHERE个子句中处理这些日期字符串.例如

SELECT whatever
  FROM yourtable
 WHERE STR_TO_DATE(yourdatefield, '%m/%d/%Y') > CURDATE() - INTERVAL 7 DAY

您可以通过这种方式处理各种日期/时间布局.请参考the format specifiers for the DATE_FORMAT() function,看看你能在STR_TO_DATE()的第二个参数中输入什么.

Mysql相关问答推荐

为什么SQL会打印\\.& '而不是\.'在命令行上?

是否有一种方法可以在mysql中设置一列,使其自动成为该行的行号的值?

配置MySQL服务器以管理数千个表

MySQL多连接以获得单个结果集(使用MySQL max函数)

MySQL滑动窗口动态间隔?

Ballerina SQL 中是否也应该考虑输入清理?

SQL:如何 Select 每个客户最后购买的产品?

错误:此查询集包含对外部查询的引用,并且只能在子查询中使用

如何将多个字符串插入变量

如何解码存储在带有type*:前缀的base64中的数据?

生成直到 10 的平方数序列

SQL:如何为给定组中的所有记录 Select 一列与另一列不匹配的位置

MySQL,递归 CTE.它如何以这种句法形式工作?

获取 MySQL 中每一行之间负差的总和

从多到多表中 Select 数据而无需重复

SQL从具有相同列的行中 Select 最后一行

在 SQL 中将列添加为 End_date,间隔为 +100 天

如何通过if语句对SQL查询进行排序

如何根据特定条件从mysql数据库中 Select 查询

函数 mysql_real_escape_string 的 PDO 类似功能是什么?