函数的小问题

cy527300280 cy527300280 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
create function 先修课(@s int)
returns table
as
begin
return (select 学生表.学号,姓名,先修课 from 学生表,成绩表,课程表
where 学生表.学号=成绩表.学号 and 成绩表.课程号=课程表.课程号 and 学号=@s )
end

报错:
服务器: 消息 170,级别 15,状态 31,过程 先修课,行 7
第 7 行: 'BEGIN' 附近有语法错误。


请问是什么原因,如果把begin和end去掉,它也报错:
服务器: 消息 209,级别 16,状态 1,过程 先修课,行 5
列名 '学号' 不明确。


问题:1、为什么加begin end就报错?
2、学号为什么不能是变量?

谢谢大家了,请帮我解答……
...全文
评论 6
收藏 已收藏
分享
返回顶部
cy527300280
MS-SQL Server 34,876 成员 254,635 内容