SQL Server 2012中的函数Choose

Choose函数用于基于其索引号返回列表中的值。
你可以认为它像一个数组。
这里的索引号从1开始。

SQL Choose函数语法

CHOOSE ( index, value1, value2.... [, valueN ] )

CHOOSE() 函数需要两个参数,

index:索引是一个整数表达式,表示项目列表中的索引。 列表索引总是从 1 开始。

value:任何数据类型的值列表。

Choose 函数的一些说明

项的索引从1开始

DECLARE @ShowIndex INT;

SET @ShowIndex =5;

Select Choose(@ShowIndex, 'M','N','H','P','T','L','S','H') As ChooseResult 

在前面的示例中,我们将索引设置 5.
Choose()返回将返回T,因为它在@ShowIndex的位置是5.

将一组类型传递给函数时,它返回最高优先级的数据类型

DECLARE @ShowIndex INT;

SET @ShowIndex =5;

Select Choose(@ShowIndex ,35,42,12.6,14,15,18.7)  As CooseResult

在本例中,我们使用 index=5。
Choose() 返回 15.0 作为输出,因为 15 出现在 @ShowIndex 位置 5 处,因为在列表的各项中,小数比整数具有更高的优先级。

3.如果索引值超过数组的绑定,则返回null

DECLARE @ShowIndex INT;

SET @ShowIndex =9;

Select Choose(@ShowIndex , 'M','N','H','P','T','L','S','H')  As CooseResult

在本例中,我们采用 index=9。 Choose() 将返回 Null 作为输出,因为索引值超出了数组的边界; 最后一个索引为8。

日期:2020-06-02 22:18:03 来源:oir作者:oir