我使用phpmyadmin将csv导入到mysql。数据包含出生日期(DOB)。有些日期超过了当前日期。例如:2035-06-15。我试图找到一种方法来解决它。例如:2035年至1935年。一种方法是更新查询2013/2014年度的所有日期。有没有办法让我发表声明?我读到并听说使用日期类型的通配符是禁忌。
答案 0 :(得分:0)
您可以使用YEAR
function来获取年份,而不是通配符:
YEAR(DOB)
然后你可以使用DATE_SUB
function减去100年:
DATE_SUB(DOB, INTERVAL 100 YEAR)
整个查询看起来像这样:
UPDATE myTable
SET DOB = DATE_SUB(DOB, INTERVAL 100 YEAR)
WHERE YEAR(DOB) > 2013