1、批量保存
批量插入的两种方式:
其一,循环插入,与MySQL无区别。
insert into table(id,name) values(1,'A’);
insert into table(id,name) values(2,’B’);
其二,批量插入
insert into table(id,name) values(1,’A’),(2,'B')
批量插入的两种方式:
其一,循环插入,与MySQL无区别。
insert into table(id,name) values(1,'A’);
insert into table(id,name) values(2,’B’);
其二,批量插入(无values 关键字)
insert into table(id,name)
select * from (
select 1,'A' from dual
union all
select 2,'B' from dual
)
2、ifnull( a, b ) 变成了 nvl( a, b )
mysql的ifnull与之对应的 oracle 相应的函数 nvl。
具体的用法同 ifnull 差别不大写法:
select nvl( column, '代替字段或者值' )?
3、限定返回结果集的行数
在mysql中,可以通过limit限制返回结果集的行数,如:
select * from u_table limit 2;
返回了u_table的前两行,在oracle中没有limit,如果oracle要得到同样的结果,则:
select * from u_table where rownum < 3;
这里rownum是内置关键字,表示结果集的行号,但是不能对rownum进行复合条件判断,如果要返回第11行至第20行10条数据:
#错误写法:
select * from u_table where rownum > 10 and rownum < 21;
#而是应该写成结果集相减的形式:
select * from u_table where rownum < 21
minus
select * from u_tablewhere rownum < 11;
发现一个,记录一个!未完待续。。。
|