Oracle数据库在语法上与MySQL的不同点
0. 不区分大小写
Oracle数据库是不区分大小写的
1. 分页查询实现
MySQL分页查询的实现是使用limit关键词,但是在Oracle中没有limit这个关键词,取而代之的是rownum,用法如下:
select * from demo_table where rownum <= 10
意思就是取符合条件的前10条数据。
2. 模糊查询的实现
两种数据库模糊查询的关键字都是like,但是在xml文件中的语法有些区别,在MySQL数据库中,模糊查询可以这么写:
like "%"#{field}"%"
like CONCAT('%',#{field},'%')
在Oracle数据库中虽然也是拼接和使用CONCAT函数这两种思路,但是写法有所不同:
-- Oracle的字符串拼接需要用||
like '%'||#{field}||'%'
-- Oracle的CONCAT函数只能传入两个参数
like CONCAT(CONCAT('%',#{field}),'%')
3. 时间格式化
两个数据库时间格式化所使用的函数和格式化参数都是不同的
Oracle
select TO_DATE('2022-11-08 10:19:21','YYYY-MM-DD hh24:mi:ss') from DUAL;
mysql
select DATE_FORMAT('2022-11-08 10:19:21','%Y-%m-%d %H:%i:%s');
这两个函数都是将字符串转为时间,一般用在时间比较的SQL里。

浙公网安备 33010602011771号