簡體   English   中英

在存儲過程中查找最小/最大輸入值,MySQL

[英]Find min/max of input values in stored procedures, MySQL

有什么簡單的方法可以在存儲過程的輸入值集中找到最小/最大值?

例如:

delimiter $$
create procedure extremevalues ( in a1 int, in a2 int , 
                                 in a3 int, in a4 int, 
                                 in a5 int, min_a int, max_a int)
begin
set max_a:=.... ;
set min_a:=.... ;
select max_a, min_a;
end$$

我知道可以在使用表時在select語句中使用聚合函數max()min()

我找不到類似問題的參考。

謝謝。

set @a:=1, @b:=2, @c:=3;
set @max:=greatest(@a, @b, @c);
set @min:=least(@a, @b, @c);
select @max, @min;

適應SP

delimiter $$
create procedure extremevalues ( in a1 int, in a2 int ,
                                 in a3 int, in a4 int,
                                 in a5 int, min_a int, max_a int)
begin
set max_a:=greatest(a1, a2, a2, a3, a4, a5);
set min_a:=least(a1, a2, a2, a3, a4, a5);
select max_a, min_a;
end$$

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM