![](/img/trans.png)
[英]sql select min, return value from different column in same row with grouping
[英]select min value in same row in sql
我想在不同列的同一行中選擇日期的最小值。
例如
column1 column2 column3
2017-01-26 2017-01-28 2017-01-27
在以上三列中,我想選擇最小日期,即選擇結果應為2017-01-26
大多數數據庫都支持least()
和greatest()
:
select least(column1, column2, column3) as min_column,
greatest(column1, column2, column3) as max_column
在任何數據庫中,都可以使用ANSI標准case
作為邏輯:
select (case when column1 >= column2 and column1 >= column3 then column1
when column2 >= column3 then column2
else column3
end) as max_column
(然后,最小邏輯類似。)
如果使用SQL Server,則可以使用以下方法:
SELECT (SELECT MIN(columnX) FROM (VALUES(column1), (column2), (column3)) x(columnX))
FROM ...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.