--自定义函数:取得指定上下限的随机数if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[f_rand]') and xtype in (N'FN', N'IF', N'TF')) drop function [dbo].[f_rand] GO if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[v_rand]') and OBJECTPROPERTY(id, N'IsView') = 1) drop view [dbo].[v_rand] GO--需要这样一个视图 create view v_rand as select re=rand() go--自定义函数:取得指定上下限的随机数 create function f_rand( @下限 int, @上限 int ) returns decimal(38,0) as begin declare @r decimal(38,0) select @r=cast(re*(@上限-@下限)+@下限 as decimal(38,0)) from v_rand return(@r) end go--调用示例 select dbo.f_rand(10,100),dbo.f_rand(10,100)
to: skyboy0720(飞) --------------- 为什么要用view , 怎么不直接把在函数中使用rand(),其中有什么秘密吗? :) 期待您的解释。
drop function [dbo].[f_rand]
GO
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[v_rand]') and OBJECTPROPERTY(id, N'IsView') = 1)
drop view [dbo].[v_rand]
GO--需要这样一个视图
create view v_rand as select re=rand()
go--自定义函数:取得指定上下限的随机数
create function f_rand(
@下限 int,
@上限 int
)
returns decimal(38,0)
as
begin
declare @r decimal(38,0)
select @r=cast(re*(@上限-@下限)+@下限 as decimal(38,0)) from v_rand
return(@r)
end
go--调用示例
select dbo.f_rand(10,100),dbo.f_rand(10,100)
---------------
为什么要用view , 怎么不直接把在函数中使用rand(),其中有什么秘密吗? :)
期待您的解释。