如何从文本列表中随机选择?

问题描述 投票:0回答:1

我正在尝试构建可用作列的默认值的SQL函数。该功能用于在用户未分配图像的情况下随机选择头像图像路径。

我尝试过一个完全错误的示例,仅处理图像而不是解决方案

我需要做的就是这样

select top 1 from "avatar1,png, avatar2,png, avatar3.png, avatar4.png, avatar5.png"  order by rand();

并且我将其转换为这样的函数

CREATE FUNCTION dbo.ReturnAvatar() 
RETURNS nvarchar(100)
AS   
BEGIN  
    DECLARE @ret nvarchar(100);  
        SET @ret = (select top 1 from "avatar1,png, avatar2,png, avatar3.png, avatar4.png, avatar5.png" as tbl order by rand());  
    RETURN @ret;  
END; 

这只是为了说明我无法申请的想法。我不知道SQL Server是否具有这样的功能。

sql sql-server sql-function string-function
1个回答
0
投票

我建议:

select top (1) val 
from (values
    ('avatar1.png'), 
    ('avatar2.png'), 
    ('avatar3.png'), 
    ('avatar4.png'), 
    ('avatar5.png')
) t(val)
order by newid();
© www.soinside.com 2019 - 2024. All rights reserved.