![](/img/trans.png)
[英]I want to add a new column using SELECT query and get a latest value from multiple columns in SQL
[英]Select the latest year in a column using SQL query
我有一个这样的 dataframe
价值。 | 日期 |
---|---|
一种 | 08/08/2009 |
一种 | 2021 年 9 月 12 日 |
一种 | 05/10/2022 |
一种 | 06/09/2022 |
一种 | 07/08/2022 |
我需要 output 喜欢
价值 | 日期 |
---|---|
一种 | 05/10/2022 |
一种 | 06/09/2022 |
一种 | 07/08/2022 |
我们必须打印日期列中所有月份数据的最新年份。请参考 output 表。
我使用了 SQL 查询
Select 前 10 * 来自按(日期)DESC 排序的表;
max() select 只有一个日期所以对我没有帮助
但没有得到预期的答复。 有人可以帮我查询吗?
您可以在子查询中使用MAX
,这将产生您在问题中显示的预期结果:
SELECT yourcolumn
FROM yourtable
WHERE
YEAR(yourcolumn) = (SELECT MAX(YEAR(yourcolumn)) FROM yourtable);
最近的年份是 2022 年,因此子查询中的MAX
将找到今年,整个查询将 select 所有日期都在 2022 年。
SELECT *
FROM tablename
WHERE datecolumn >= (SELECT DATE_FORMAT(MAX(datecolumn), '%Y-01-01')
FROM tablename)
要改进此查询,您需要按datecolumn
列(或此列是表达式前缀的位置)建立索引。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.