-
字符串拼接:
- MySQL:
CONCAT()函数,例如:SELECT CONCAT(first_name, ' ', last_name) AS full_name FROM employees; - Oracle:双竖线(||),例如:
SELECT first_name || ' ' || last_name AS full_name FROM employees;
- MySQL:
-
获取当前日期和时间:
- MySQL:
NOW()函数,例如:SELECT NOW(); - Oracle:
SYSDATE关键字,例如:SELECT SYSDATE FROM dual;
- MySQL:
-
分页查询:
- MySQL:
LIMIT和OFFSET,例如:SELECT * FROM employees LIMIT 10 OFFSET 20; - Oracle:
ROWNUM,例如:SELECT * FROM (SELECT * FROM employees WHERE ROWNUM <= 30) WHERE ROWNUM >= 21;
- MySQL:
-
空值处理:
- MySQL:
IFNULL()函数,例如:SELECT IFNULL(column_name, 'default_value') FROM table_name; - Oracle:
NVL()函数,例如:SELECT NVL(column_name, 'default_value') FROM table_name;
- MySQL:
-
日期函数:
- 例如MySQL中的
DATE_FORMAT()函数和Oracle中的TO_CHAR()函数的语法稍有差异。
- 例如MySQL中的
-
自增字段:
- MySQL:一般使用
AUTO_INCREMENT关键字来创建自增字段,例如:CREATE TABLE table_name (id INT AUTO_INCREMENT PRIMARY KEY, ...); - Oracle:可以使用序列(Sequence)来模拟自增字段,或者使用
IDENTITY列选项(在Oracle 12c及以上版本中),例如:CREATE TABLE table_name (id NUMBER GENERATED BY DEFAULT ON NULL AS IDENTITY PRIMARY KEY, ...);
- MySQL:一般使用
Oracle和MySQL在语法方面的一些主要区别:
SQL数据库操作技巧:字符串连接、日期时间处理与自增字段
本文介绍了如何在MySQL和Oracle中使用CONCAT()、||、NOW()、SYSDATE等函数进行字符串拼接和获取当前日期时间,以及LIMIT、OFFSET用于分页查询,IFNULL()和NVL()处理空值,同时对比了MySQL的AUTO_INCREMENT与Oracle的序列和IDENTITY实现自增字段的方法。
791

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



