mysql - 如何在此日期字符串 01/01/2004 中定位年份

标签 mysql date

我有一个用户数据库,数据库中存储的出生日期格式为 01/01/2004。我读到我应该先过一年。那么我将如何定位该字符串中的年份。我想做以下事情。

UPDATE users 
SET level = 9 
WHERE birthyear = 2003

谢谢

最佳答案

假设您的字段名称是birthdate(而不是birthyear),那么以下内容将起作用。 YEAR 函数将返回给定datedatetime 字段的年份。

UPDATE users SET level = 9 WHERE YEAR(birthdate) = 2003;

如果日期以字符串数据类型存储(坏主意),并且采用您指定的格式,则以下内容将起作用。 RIGHT 函数获取给定字符串的最后 n 个字符。

UPDATE users SET level = 9 WHERE RIGHT(birthdate, 4) = 2003;

关于mysql - 如何在此日期字符串 01/01/2004 中定位年份,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27286368/

相关文章:

MySQL:连接三个表并显示总数

mySQL 在 cffunction 中定义和调用后不执行

php - 在php中将多行插入sql数据库

php - Wordpress 帖子表 auto_increment 值太大 - 无法添加新页面

java - Java(或 Android)中的日期格式

windows - 批处理日期时间在上午 10 点之前中断 Windows 8

mysql - 从表中获取最新的两个不同位置

sql - MySql 获取日期值之间的行

java - 如何在 Android 中比较用户选择的日期与起始日期和截止日期?

php - 如何从日期中获取天数?