我正在创建这个应该返回随机字符串的函数:
create function createRandomString() returns Text
return concat(
char(round(rand()*25)),
char(round(rand()*25)),
char(round(rand()*25)),
char(round(rand()*25)),
char(round(rand()*25)),
char(round(rand()*25)),
char(round(rand()*25)),
char(round(rand()*25))
);
由于某种原因,这个功能什么都不返回......我不知道为什么......
当我在选择中使用完全相同的concat()
时 - 它可以正常工作。
答案 0 :(得分:1)
问题是你要返回0到25之间的数值,这些数字不是放入字符串的普通字符。添加65到他们开始'A':
create function createRandomString() returns Text
return concat(
char(round(rand()*25+65)),
char(round(rand()*25+65)),
char(round(rand()*25+65)),
char(round(rand()*25+65)),
char(round(rand()*25+65)),
char(round(rand()*25+65)),
char(round(rand()*25+65)),
char(round(rand()*25+65))
);
您可能也希望阅读ASCII编码,以便更好地了解自己在做什么。