讲讲最近
最近有些倒霉,诸事不顺,希望接下来有好的事情发生。接着上次的数据库编程讲喽!
接着上次的讲喽
判断
首先是跟其他语言一样的。用if来表示判断,具体语句如下:
if 条件 then
程序块;
else
程序块;
end if;
多个if嵌套的:
if 条件 then
程序块;
elsif 条件 then
程序句;
(elsif 条件 then
程序句;
)
else
程序块;
end if;
循环(只讲了for loop循环)
for rec(游标或者说是变量) in -3..3(一般写查询表,即获取数据) loop
循环的内容,比如说更新,插入语句,删除语句(rec.列名代表当前游标的一行中的这一列的数据)
end loop;
loop之后是开始循环的内容,直到end loop结束循环,对于游标的理解:是把查询到的表放到游标里,一个loop循环用一行数据当rec的数据查询完了结束循环
用到的小知识
-
merge into作用:讲从一个表A查询到的数据,根据条件判断,如果在表B中出现满足条件的,就更新表B,如果不满足就将表A的这行数据插入表B中。
merge into 表B(被插入数据的表) t using (select 表A的字段,即列名 from 表A t where 表A满足某个条件) tt on (将表A的这行数据与表B进行比较,即符合存在的条件) when matched then(如果满足) update(更新表B语句,需要更新的字段,直接用,隔开,最后一句不写) set t.xlm = tt.xlm, t.BZJQTGZ = tt.sm when not matched then(如果不满足) insert (表B的字段) values (值); -
常用的函数
2.1.查找字符串中的位置
instr( string1, string2 [, start_position [, nth_appearance ] ] )
参数分析:
string1
源字符串,要在此字符串中查找。
string2
要在string1中查找的字符串.
start_position
代表string1 的哪个位置开始查找。此参数可选,如果省略默认为1. 字符串索引从1开始。如果此参数为正,从左到右开始检索,如果此参数为负,从右到左检索,返回要查找的字符串在源字符串中的开始索引。
nth_appearance代表要查找第几次出现的string2. 此参数可选,如果省略,默认为 1.如果为负数系统会报错。
注意:如果String2在String1中没有找到,instr函数返回0.
2.2.to_date(" String1","String2")将char类型的转换为日期格式的(日后详细讲)
本文深入讲解数据库编程中的关键概念,包括条件判断、循环控制及数据处理。探讨了if语句的使用,for循环的实现,以及mergeinto指令如何在两个表间进行数据同步。同时,介绍了instr函数用于字符串定位的方法,以及to_date函数将字符转换为日期格式的用法。
155

被折叠的 条评论
为什么被折叠?



