SQL查询中 给了出生年月 要求查询年龄大于20的 并且按照出生年月从大到小排列的查询语句该怎么写
时间: 2024-11-04 13:14:26 浏览: 17
SQL 查询语句
在SQL查询中,如果你有一个包含`birth_date`字段的数据表,假设该字段存储的是日期类型,你可以使用以下查询语句来获取年龄大于20并且按照出生年月降序排序的信息:
```sql
SELECT *, EXTRACT(YEAR FROM CURRENT_DATE) - EXTRACT(YEAR FROM birth_date) AS age
FROM your_table_name
WHERE age > 20
ORDER BY birth_date DESC;
```
这里的关键点是:
1. `EXTRACT(YEAR FROM CURRENT_DATE)`获取当前年份,`EXTRACT(YEAR FROM birth_date)`计算每个人的出生年份。
2. `age = EXTRACT(YEAR FROM CURRENT_DATE) - EXTRACT(YEAR FROM birth_date)`计算每个人的年龄。
3. `WHERE age > 20`筛选出年龄大于20的记录。
4. `ORDER BY birth_date DESC`按出生年月从大到小排序。
记得将`your_table_name`替换为实际的表名。
阅读全文