创建一个函数,函数名为:fun_getscore,实现输入参数为姓名和课程名,返回相应的分数,例如,dbo.fun_getscore('章志刚','英语')返回“59”。
时间: 2024-03-01 08:51:31 浏览: 49
好的,根据您的要求,我可以为您提供如下的MySQL函数代码,用于实现您的功能:
```
CREATE FUNCTION fun_getscore (sname VARCHAR(20), cname VARCHAR(20))
RETURNS INT
BEGIN
DECLARE score INT;
SELECT score INTO score FROM score_table WHERE sname = sname AND cname = cname;
RETURN score;
END;
```
其中,`score_table` 是存储学生姓名、课程名和分数的表,您需要根据实际情况进行修改。使用时,您可以通过以下方式调用该函数:
```
SELECT fun_getscore('章志刚', '英语');
```
该语句将返回“59”,即章志刚在英语课上的分数。
相关问题
创建带两个输入参数和一个输出参数的存储过程P_GetScore,执行存储过程时,输入参数为分数段的两个边界值(80-90分数段的两参数为80和90),输出参数为得到该分数段的人数。
好的,您可以使用以下 SQL 语句创建所需的存储过程P_GetScore:
```
CREATE PROCEDURE P_GetScore
@MinScore INT,
@MaxScore INT,
@Count INT OUTPUT
AS
BEGIN
SELECT @Count = COUNT(*)
FROM Scores
WHERE Score >= @MinScore AND Score <= @MaxScore
END
```
然后,您可以使用以下 SQL 语句调用存储过程并获取结果:
```
DECLARE @Count INT
EXEC P_GetScore @MinScore = 80, @MaxScore = 90, @Count = @Count OUTPUT
SELECT @Count AS [80-90 Score Range Count]
```
这将输出得到该分数段的人数。请注意,这里的 `Scores` 表是一个示例表,您需要使用自己的表来适应您的需求。
(3)(基础题)阅读以下的程序,回答程序后的问题: class people(object): __te="隐私" def __init__(self,name,age,weight): self.name=name self.age=age self.weight=weight def eat(self,x): self.weight=self.weight+x*0.01 def __fun(self): pass def _fun2(self): pass def getyinsi(self): return self.__te class student(people): def __init__(self,s,m): self.no=s self.score=m def getscore(self): print("%s的成绩为%s"%(self.name,self.score)) zhangsan=people("张三",20,100) zhangsan.__________(1)__________________ lisi=student("100000001",95) lisi.________________(2)_________________ 回答以下问题: ①父类people拥有几个成员?分别列出来。 一个成员,张三 属性: 方法:__init__()、eat()、__fun()、 ②子类student拥有几个成员?分别列出来。 属性: 方法: ③在后面zhangsan对象的引用位置(1)可以填写的成员有: ④在后面lisi对象的引用位置(2)可以填写的成员有:
①父类people拥有三个成员:属性__te,方法__init__()和方法eat()。
②子类student拥有两个成员:属性no和属性score。
③在后面zhangsan对象的引用位置(1)可以填写的成员有:eat(x)。
④在后面lisi对象的引用位置(2)可以填写的成员有:getyinsi()和getscore()。
阅读全文