Oracle踩坑记录
1、在Oracle中,CONCAT函数将只允许您将两个值连接在一起。如果需要连接多个值,那么我们可以嵌套多个CONCAT函数调用。
SELECT CONCAT('A','B','C') FROM dual -- 报错
SELECT CONCAT(CONCAT('A','B'),'C') FROM dual -- 正确方式
也可以改为使用 || 运算符可以将两个或两个以上的字符串连接在一起。
SELECT 'a' || 'b'|| 'c' FROM dual
2、在Oracle里,表的别名不能用as,列的别名可以用as
select a.appname from appinfo as a; -- 错误
select a.appname from appinfo a; -- 正确
3、oracle的sql语句中没有limit,limit是mysql中特有的,在oracle中可用rownum来表示,用于查询结果中的前N行数据。
-- 查询emp表中的前5行数据
select * from emp where rownum <= 5;
4、批量插入数据,与mysql语法不兼容
insert all
into table_name (id,name) values(10001,'wang_er') -- 不能加逗号
into table_name (id,name) values(10002,'zhang_san')
insert into table_name (id,name) values(10003,'zhao_si')
SELECT * FROM dual; -- select语句是必须的