如何在视图中调用函数

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

我创建了一个名为 f_concat 的函数,并创建了一个名为 v_students 的视图。现在我必须调用该函数,并在视图中使用 SELECT 语句执行它。如何在视图中使用 select 语句调用函数?

这是我一直在尝试的代码

drop function if exists f_concat
go
CREATE FUNCTION f_concat(
    @mike as varchar(10), @fudge as varchar(10)) 
RETURNS varchar(30) AS
BEGIN
    return concat('mike', 'fudge', '-')
end;
go


CREATE VIEW v_students AS
SELECT s.student_id, s.student_firstname + ' ' + s.student_lastname as student_name, s.student_gpa, m.major_name
FROM students s
join majors m 
on s.student_major_id=m.major_id
go

exec f_concat @student_name= f_concat
select * from v_students
sql function tsql view
1个回答
0
投票

在你的例子中你会打电话给

SELECT student_id, f_concat(student_name,student_name),student_gpa,major_name FROM v_students

你的视图不应该连接名称,这将完成功能,当然你可以直接在视图中使用该功能,如果你希望视图返回完整的名称

© www.soinside.com 2019 - 2024. All rights reserved.