1.创建存储过程,查询JXGL数据库中每个学生各门功课的成绩 2.创建存储过程,要求输入某学生的姓名,能从SC表中查询到该学生的平均成绩 3.查看数据表的索引信息 4.修改第2步创建的存储过程,要求输入学生学号,能够根据该学生所选课程的平均成绩显示提示信息,即如果平均成绩在60分以上,显示“此学生综合成绩合格合格,成绩为XX分”,否则显示“此学生综合成绩不合格,成绩为XX分”
1条回答 默认 最新
- 奇怪丶L 2020-12-03 17:27关注
这种还是需要你自己去写下,数据库存储过程都是差不太多的,像你需要的都是输入参数,返回值。给你个例子做参考吧,希望对你有所帮助
CREATE OR REPLACE FUNCTION timestampdiff(in date_type character varying,in i_date date,in i_date_1 date)
RETURNS integer AS
$BODY$
DECLARE
--***********************************************************************************************
-- sql 存储过程
-- 名称 : p_timestampdiff
-- 注意事项 :
-- 参数 :i_date i_date_1
-- 功能描述 :通用过程,获取两个日期相隔日期
-- 返回值 :当月天数
-- 创建人 :
-- 修改历史 :修改人 修改时间 主要改动说明
--
--***********************************************************************************************BEGIN
RETURN case when upper(date_type) in ('YEAR','YEARS') then extract(year from date(i_date))-extract(year from date(i_date_1))
when upper(date_type) in ('MONTH','MONTHS') and extract(day from date(i_date))- extract(day from date(i_date_1))<0
then ((extract(year from date(i_date))*12+extract(month from date(i_date)))-(extract(year from date(i_date_1))*12+extract(month from date(i_date_1))))-1
when upper(date_type) in ('MONTH','MONTHS') and extract(day from date(i_date))- extract(day from date(i_date_1))>=0
then ((extract(year from date(i_date))*12+extract(month from date(i_date)))-(extract(year from date(i_date_1))*12+extract(month from date(i_date_1))))
when upper(date_type) in ('DAY','DAYS') then date(i_date)-date(i_date_1) end;
END;$BODY$
LANGUAGE plpgsql VOLATILE;解决 无用评论 打赏 举报
悬赏问题
- ¥15 如何在scanpy上做差异基因和通路富集?
- ¥20 关于#硬件工程#的问题,请各位专家解答!
- ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
- ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
- ¥30 截图中的mathematics程序转换成matlab
- ¥15 动力学代码报错,维度不匹配
- ¥15 Power query添加列问题
- ¥50 Kubernetes&Fission&Eleasticsearch
- ¥15 報錯:Person is not mapped,如何解決?
- ¥15 c++头文件不能识别CDialog