当前位置:首页 » 编程语言 » sql自定义函数返回值
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

sql自定义函数返回值

发布时间: 2022-03-11 23:07:10

sql自定义函数的返回值如何插入原有的表中

只能用带返回参数(output)存储过程来修改表中的数据! 备注:自定义函数不允许修改表中的数据,但是带返回参数(output)存储过程可以实现函数的功能!

❷ SQL自定义函数怎么返回2个值

自定义函数,采用返回一张表,那么就可以很多个值,目前我常采用这种方式,如下脚本所示:

createfunctionfun_test(@str1varchar(20))
returns@ttable(avarchar(10),bvarchar(10))
begin
insertinto@t(a,b)values('变量1','变量2')
end

请采纳!

❸ pl/sql自定义函数如何返回多个值

表中也是要参数的啊,光给表了,人家怎么知道你表里要返回什么啊~
RETURN @t TABLE【(f char(20),a char(20),b char(6),c datetime, d char(4) )】
【】里面的是你要返回表中的参数
@t是你表名的参数
下面的insert你知道么?就是读入这些参数到那个表中
然后返回输出~

❹ 请教SQL自定义函数返回的例子

有记录的话会输出 学号,姓名,性别,课程名称,成绩,如果返回时空,在后台代码做判断吧
用的是mysql
delimiter
$$
create
function
name_of_function(kc
varchar(10))
//kc
课程名称
return
char(8)
begin
//现在比如你传的参数是会计
return
(
select
ST.学号,ST.姓名,ST.性别
,SC.课程名,SC.成绩
from
st
ST
left
join
(select
S.学号,S.成绩,C.课程名
from
s
S
left
join
c
C
on
S.课程号
=
C.课程号
and
C.课程名
=
'会计')
SC
on
st.学号
=
SC.学号
;

);
end$$
demiliter;

❺ sql 自定义函数 5个变量 最终返回变量值不同范围时的另一个值的和

declare@Ageint
declare@W_Hnumeric
declare@Cupidvarchar(20)

declare@date_of_Birthdate
declare@Weightnumeric(5,2)
declare@Heightnumeric(5,2)
declare@Smokerchar(5)
declare@Salarychar(10)

set@date_of_Birth='1982-09-01'
set@Weight=58.0
set@Height=1.68
set@Smoker='NO'
set@Salary=60000

select@Age=floor(datediff(day,@date_of_Birth,getdate())/365.25)
select@W_H=@Weight/@Height

select@Cupid=
casewhen@Age>20and@Age<=30then'4'
when@Age>30and@Age<=40then'3'
when@Age>40and@Age<=50then'2'
when@Age>50then'4'else''end
+casewhen@W_H>=20and@W_H<25then'1'
when@W_H>=25and@W_H<30then'3'
when@W_H>=30and@W_H<35then'4'
when@W_H>=35and@W_H<40then'2'else''end
+casewhen@Smoker='Yes'then'0'
when@Smoker='NO'then'2'else''end
+casewhen@Salary>50000then'1'
when@Salary>=50000and@Salary<60000then'2'
when@Salary>=60000and@Salary<70000then'3'
when@Salary>=70000then'4'else''end

SELECT@Cupid

❻ sqlserver自定义函数如何返回结果集

定义一个返回值为表结构,然后返回表,这样就可以了。

createfunctionfn_test(@avarchar(10))
returnstable(keyIdvarchar(20))
as
begin
declare@table(keyIdvarchar(20))
return@table
end

go

❼ sql或者oracle自定义函数.返回值,具体有什么作用,什么情况下需要调用自己写的自定义函数

这个很好理解吧,,,
1、例如我函数一开始的参数为1,我想根据复杂的运算(函数中的转换),将他变为例如'A',就用函数返回值了啊;
2、在举个例子,如果我有很多数字,例如1,11,111这样的情况,我不可能用case语句全写出来,麻烦呀,他们有规律啊,这样我就直接用函数,找出他们的规律,直接返回为A,AA,AAA这样的了
3、一般调用的的情况,当然是你的原始数据和你想返回的数据,遵循了你写的函数的规律,这样的情况就直接调用函数,返回你需要的数据了

❽ 求一个SQL自定义函数 返回表

可以用如下方式来实现

select id,
substring(bz,number,CHARINDEX('+', bz + '+',number) - number) as bz

from dbo.tableA
join master..spt_values b
on number <= LEN(bz) and SUBSTRING('+' + bz,number,1) = '+' and b.type = 'P';

❾ 求助:sql中自定义函数,能否有多个返回值

1、可以返回Table,来解决多值问题;
2、如果函数不是放到SQL查询语句中使用,建议改为sp。这样可以返回多个值,且可类型不同。

❿ SQL自定义函数返回记录

给你研究了两种方法,看看把:
create table 学生表 (学号 varchar(12),姓名 varchar(20))
go
insert into 学生表 values ('1','张三')
insert into 学生表 values ('2','李四')
go
create function f_info
(@id varchar(12))
returns @result table (学号 varchar(12),姓名 varchar(20))
as
begin
insert into @result select * from 学生表 where 学号=@id
return
end
go
select * from dbo.f_info('1')
go
create procere p_info (@id varchar(12))
as
select * from 学生表 where 学号=@id
go
exec p_info '1'