这是我的sql表
| id | data | date |
|----|-----------|----------------|
| 1 | some data | october 2014 |
| 2 | some data | september 2014 |
我想在表中获取最近的月份年份,因为日期是varchar,我如何获取最大日期?
这应该做到:
SELECT max(str_to_date(date, '%M %Y')) as max_date
FROM schema.data;
下面是一个经过充分测试的PHP示例:
<?php
function getMaxDate() {
try {
$db = new PDO("mysql:host=localhost;charset=utf8", "root", "root");
$cmd = $db->prepare("
SELECT max(str_to_date(date, '%M %Y')) as max_date
FROM schema.data;
");
$cmd->execute();
$result = $cmd->fetch();
return $result[0];
} catch (PDOException $e) { echo $e->getMessage(); return; }
}
echo getMaxDate();
?>
返回以下内容:
2014-10-00