这是我的sql表
| id | data | date |
|----|-----------|----------------|
| 1 | some data | october 2014 |
| 2 | some data | september 2014 |
我希望获取表格中的最新月份,因为日期是varchar,我如何获得最大日期?
答案 0 :(得分:1)
这应该这样做:
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