《Essential C++》第二章练习
关于函数的声明与定义还不是很清楚。。继续苦读 = =
《Essential C++》第一章练习
刚看完第一章~做做练习 = = 前4题偷懒不做,从第5题开始……
PL/SQL课堂练习(过程、函数、包、触发器)
1、过程练习,掌握过程参数(in/out/in out)及调用环境
1.1)过程名字PROC_EMP(in hireYear,out manCount,in out commis_pct)
需求描述:
输入一个hireYear,计算出该年入职的员工数staffCount;
给定一个commis_pct,上述范围的职员如果没有提成(commission_pct)的,
用这个数作为他的提成,已有提成的,不做改动
上述范围职员的提成最大值用commis_pct参数返回
PL/SQL课堂练习(匿名块)
1、普通变量声明
1)、声明3个变量:full_name varchar2(20),salary number(9,2),fdate date
2)、用Select into语句从employees表为上面3个变量赋值,条件是rownum <= &_rownum
3)、用DBMS_OUTPUT.PUT_LINE()打印三个变量值,结果如:Mickel.Jordon 's salary is $4680, Joined in 1987-07-12
4)、另外声明常量PI,NUMBER(2,7)=3.1415926,声明变量flag BOOLEAN,默认值=FALSE,声明变量age NUMBER,无默认值
5)、打印上述变量
数据库对象练习
【HR/HR】
1、用学生选课场景创建表:
1.1
Student(id,sno,sname,telnum,email)
Course(id,cno,cname,teachername)
studentcourse(id,s_id,c_id)
-
CREATE TABLE student(
-
id NUMBER,
-
sno VARCHAR2 (15) NOT NULL,
-
sname VARCHAR2 (20) NOT NULL,
-
telnum VARCHAR2 (12),
-
email VARCHAR2 (50)
-
);
-
CREATE TABLE course(
-
id NUMBER,
-
cno VARCHAR2 (6) NOT NULL,
-
cname VARCHAR2 (30) NOT NULL,
-
teachername VARCHAR2(20)
-
);
-
CREATE TABLE studentcourse(
-
id NUMBER,
-
s_id NUMBER,
-
c_id NUMBER
-
);
SQL练习
【SCOTT/TIGER】
7. 用Decode函数实现横表和竖表的转换
-
SELECT deptno DEPARTMENT_ID,
-
COUNT(*) "部门人数",
-
SUM(DECODE(SIGN(sal-9000),-1,0,1)) "超高收入人数(>9000)",
-
SUM(DECODE(SIGN(sal-9000),-1,0,( DECODE(SIGN(sal-12000),1,0,1) ) )) "极高收入人数([9000,12000])",
-
SUM(DECODE(SIGN(sal-6000),-1,0,( DECODE(SIGN(sal-9000),1,0,1) ) )) "高收入([6000,9000])",
-
SUM(DECODE(SIGN(sal-3000),-1,0,( DECODE(SIGN(sal-6000),1,0,1) ) )) "一般收入([3000,6000])",
-
SUM(DECODE(SIGN(sal-3000),-1,1,0)) "低收入([<3000])"
-
FROM emp
-
GROUP BY deptno;
练习:SQL基础与常用单行函数
![endif]--> !--[if> ![endif]--> !--[if> ![endif]--> !--[if> ![endif]--> !--[if>