sql创建随机表函数

时间:2017-04-03 01:05:03

标签: sql

所以我是SQL新手,这实际上是我的第一个项目.. 我想要做的是创建一个返回带有随机数的表的扇形。我正在使用pgAdmin 4 IDE

这是代码:

CREATE OR REPLACE FUNCTION create_amka(n integer)
RETURNS TABLE(amka integer) AS
$$
BEGIN
 return query

  select cast(random()*100 as integer)
  ORDER BY random() LIMIT n;

END;
$$
LANGUAGE 'plpgsql' IMMUTABLE; 

所以fanction有一个输入(n整数),并且应该返回一个包含n个随机数的表。但它只返回1个数字。 “LIMIT n”是问题吗?有没有更好的方法来创建这样的功能? 提前致谢

1 个答案:

答案 0 :(得分:0)

如果您想返回n个号码,请使用generate_series()

select cast(random()*100 as integer)
from generate_series(1, n);

无需订购。它们已经是随机的了。