Oracle题目:奇数行在句末打印逗号,偶数行在句末打印句号
2020-06-26 04:33
801 查看
1.建一张表
create table poem( linenum int, line varchar2(50) ) TABLESPACE USERS;
2.插入数据
insert into poem values(1,'久旱逢甘露——几滴'); insert into poem values(2,'他乡遇故知——仇敌'); insert into poem values(3,'洞房花烛夜——隔壁'); insert into poem values(4,'金榜题名时——落第');
3.核心
DECLARE num int; linetext varchar2(50); CURSOR poem_cursor IS SELECT linenum,line from poem order by linenum FOR UPDATE; BEGIN OPEN poem_cursor; LOOP FETCH poem_cursor INTO num,linetext; EXIT WHEN poem_cursor%NOTFOUND; IF num mod 2 = 1 THEN UPDATE poem SET line = linetext || ',' WHERE CURRENT OF poem_cursor; ELSE UPDATE poem SET line = linetext || '。' WHERE CURRENT OF poem_cursor; END IF; END LOOP; CLOSE poem_cursor; COMMIT; END; /
4.查看数据
select * from poem;
5.效果如图:
第二个题目要求:创建一个存储过程,传入一个参数,能够打印前num个字符
CREATE OR REPLACE PROCEDURE ChangePoem( num int ) AS line poem.line%TYPE; CURSOR poem_cursor2 IS SELECT line FROM poem order by linenum; BEGIN OPEN poem_cursor2; LOOP FETCH poem_cursor2 INTO line; EXIT WHEN poem_cursor2%NOTFOUND; DBMS_OUTPUT.PUT_LINE(SUBSTR(line,1,num)); END LOOP; CLOSE poem_cursor2; END; / EXEC ChangePoem(5);
第三个题目
CREATE OR REPLACE PROCEDURE ChangePoem AS line poem.line%TYPE; CURSOR poem_cursor3 IS SELECT line FROM poem order by linenum; BEGIN OPEN poem_cursor3; LOOP FETCH poem_cursor3 INTO line; EXIT WHEN poem_cursor3%NOTFOUND; DBMS_OUTPUT.PUT_LINE('本想着'||SUBSTR(line,1,5)||','||'没想到结果却是'||SUBSTR(line,8,9)); END LOOP; CLOSE poem_cursor3; END; /
相关文章推荐
- 《剑指Offer》题目:调整数组顺序使奇数位于偶数前面
- shell 打印偶数行-奇数行 ,打印行号
- Java两个线程轮换打印1-100内的奇数和偶数
- C语言:获取一个整数二进制序列中所有的偶数位和奇数位,分别打印出二进制序列
- 题目1516:调整数组顺序使奇数位于偶数前面-归并排序
- 九度_题目1516:调整数组顺序使奇数位于偶数前面
- 调整数组使奇数全部都位于偶数前面。 题目: 输入一个整数数组,实现一个函数,来调整该数组中数字的顺序使得数组中所有的奇数位于数组的前半部分,所有偶数位于数组的后半部分。
- 题目1516:调整数组顺序使奇数位于偶数前面-九度
- awk & sed之奇数行与偶数行的打印
- 015 题目:编写一个函数,输入n为偶数时,调用函数求1/2+1/4+...+1/n,当输入n为奇数时,调用函数1/1+1/3+...+1/n
- java代码:用for循环求和,求偶数和,求奇数和,打印水仙花数,统计水仙花数
- 键盘输入10个正整数,先打印输出奇数,再输出偶数
- 九度题目1516:调整数组顺序使奇数位于偶数前面
- python打印10以内的奇数和偶数
- 论文页眉设置奇数偶数页不同页眉,奇数页为各章题目,偶数页为论文题目
- 1.调整数组使奇数全部都位于偶数前面。 题目: 输入一个整数数组,实现一个函数,来调整该数组中数字的顺序使得数组中所有的奇数位于数组的前半部分,所有偶数位于数组的后半部分。
- 用awk、sed打印奇数行或偶数行
- 题目14:调整数组顺序使奇数位于偶数前面
- 九度OJ-题目1516:调整数组顺序使奇数位于偶数前面
- Java笔试题--用两个线程交叉打印(0~100)间的奇数和偶数