![](/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.