我有一個如下表:
複製資料的查詢:
DROP TABLE IF EXISTS units_table; CREATE TEMP TABLE units_table ( Brand varchar(100), units numeric(38,12) ); INSERT INTO units_table (Brand, units) VALUES ('A',200),('B',0),('C',300),('D',400),('E',1500),('F',700),('G',800),('H',450);
專門使用視窗函數,我想獲得表格中最高的值。如下圖所示:
但是當我使用時:
select brand, units, FIRST_VALUE(units) OVER () as Highest from units_table
它給出的第一個值為 0。如果我這樣做,
select brand, units, FIRST_VALUE(units) OVER (ORDER BY UNITS) as Highest from units_table
拋出錯誤。 具體應該如何使用Window Function來解決這個問題呢?預先感謝您!
P粉6163836252024-04-05 11:32:53
select brand,units, FIRST_VALUE(units) OVER (ORDER BY UNITS DESC) as Highest from units_table
對我有用
P粉9596764102024-04-05 09:38:42
您需要MAX()
視窗函數:
SELECT brand, units, MAX(units) OVER () AS Highest FROM units_table;
請參閱演示。