sql根据生日计算年龄并更新
时间: 2023-08-04 16:35:33 浏览: 52
您可以使用以下SQL语句计算年龄并更新到您的表中:
```
UPDATE `表名`
SET `年龄` = TIMESTAMPDIFF(YEAR, `生日`, CURDATE())
```
其中,`表名`是您要更新的表名,`年龄`是您要更新的列名,`生日`是您的生日列名。`TIMESTAMPDIFF`函数可以用来计算两个日期之间的差值,第一个参数是要计算的单位(这里是年),第二个参数是开始日期(生日),第三个参数是结束日期(当前日期),即`CURDATE()`。
相关问题
sql 根据年月计算年龄
假设有一个名为`person`的表格,其中有一个名为`birthday`的列,存储了每个人的出生日期。要根据年月计算年龄,可以使用以下SQL语句:
```sql
SELECT
YEAR(CURDATE()) - YEAR(birthday) -
(RIGHT(CURDATE(), 5) < RIGHT(birthday, 5)) AS age
FROM person;
```
其中,`CURDATE()`函数返回当前日期,`YEAR()`函数返回日期的年份,`RIGHT()`函数返回字符串中的最后几个字符。
该语句将计算每个人的出生年份与当前年份之差,再根据月日判断是否已经过了生日,最终得到每个人的年龄。
sqlserver根据生日查询年龄
可以使用DATEDIFF函数和GETDATE函数来计算年龄。例如,假设您的表中有一个名为"person"的列,其中包含生日信息,您可以使用以下SQL查询来计算每个人的年龄:
```sql
SELECT DATEDIFF(YEAR, person.birthday, GETDATE()) AS age FROM person
```
其中,DATEDIFF函数用于计算两个日期之间的时间差(以指定的时间单位为基础),在此示例中,我们使用YEAR作为时间单位。GETDATE函数用于获取当前日期。