Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

oracle转mysql

作者:暗夜幽殤   发布日期:2026-07-06   浏览:127

-- Oracle 到 MySQL 的转换示例

-- 1. Oracle 序列 (SEQUENCE) 转换为 MySQL 自增字段 (AUTO_INCREMENT)
-- Oracle:
CREATE SEQUENCE user_seq START WITH 1 INCREMENT BY 1;

-- MySQL:
CREATE TABLE users (
    id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(255) NOT NULL
);

-- 2. Oracle 中的 SYSDATE 转换为 MySQL 中的 NOW()
-- Oracle:
SELECT SYSDATE FROM dual;

-- MySQL:
SELECT NOW();

-- 3. Oracle 中的 DUAL 表在 MySQL 中不需要
-- Oracle:
SELECT 'Hello, World!' FROM dual;

-- MySQL:
SELECT 'Hello, World!';

-- 4. Oracle 中的 TO_CHAR 函数转换为 MySQL 中的 DATE_FORMAT 函数
-- Oracle:
SELECT TO_CHAR(SYSDATE, 'YYYY-MM-DD') FROM dual;

-- MySQL:
SELECT DATE_FORMAT(NOW(), '%Y-%m-%d');

-- 5. Oracle 中的 DECODE 函数转换为 MySQL 中的 CASE WHEN 语句
-- Oracle:
SELECT DECODE(gender, 'M', 'Male', 'F', 'Female', 'Unknown') FROM employees;

-- MySQL:
SELECT 
    CASE gender 
        WHEN 'M' THEN 'Male' 
        WHEN 'F' THEN 'Female' 
        ELSE 'Unknown' 
    END 
FROM employees;

解释说明:

  1. 序列 (SEQUENCE): 在 Oracle 中,序列用于生成唯一的数值。在 MySQL 中,可以使用 AUTO_INCREMENT 来实现类似的功能。
  2. SYSDATE: Oracle 使用 SYSDATE 获取当前日期和时间,而 MySQL 使用 NOW()
  3. DUAL 表: Oracle 中的 DUAL 表用于选择常量或表达式,而在 MySQL 中可以直接选择常量或表达式,无需 DUAL 表。
  4. TO_CHAR 和 DATE_FORMAT: Oracle 的 TO_CHAR 函数用于格式化日期,MySQL 使用 DATE_FORMAT 实现相同功能。
  5. DECODE 和 CASE WHEN: Oracle 的 DECODE 函数用于条件判断,MySQL 使用 CASE WHEN 语句来实现类似逻辑。

上一篇:mysql 定时备份数据

下一篇:mysql数据库导入sql文件

大家都在看

mysql二级索引

mysqlavg函数保留小数

mysql显示表内容

mysql收集表统计信息

mysql经纬度距离计算

mysql 加密

mysql大小写转换函数

存储过程mysql

mysql 1265

mysql with语句

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站