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语句是必须的

 

posted @ 2022-02-18 17:17  danielzzz  阅读(57)  评论(0编辑  收藏  举报