MySQL 条件函数/加密函数/转换函数

条件函数

  • IF(): 如果条件为真,返回一个值,否则返回另一个值。

    -- 示例:根据员工的薪水返回薪水等级
    SELECT name, salary,
    IF(salary < 3000, 'Low',
    IF(salary BETWEEN 3000 AND 7000, 'Medium', 'High')) AS salary_level
    FROM employees;

  • CASE: 更复杂的条件逻辑,类似于编程语言中的 switch-case 语句。

    SELECT
    CASE
    WHEN score >= 90 THEN 'A'
    WHEN score >= 80 THEN 'B'
    WHEN score >= 70 THEN 'C'
    WHEN score >= 60 THEN 'D'
    ELSE 'F'
    END AS grade
    FROM students;

  • COALESCE(): 返回参数列表中第一个非 NULL 值。

    SELECT name, COALESCE(city, 'Unknown') AS city
    FROM students;

加密函数

  • MD5(): 计算字符串的 MD5 哈希值。

    -- 示例:对用户的密码进行MD5加密
    SELECT MD5('password123') AS encrypted_password;

  • SHA1(): 计算字符串的 SHA-1 哈希值。

    SELECT SHA1('7895656')

转换函数

  • CAST(): 将一个表达式转换为指定的数据类型。

    -- 示例:将字符串转换为整数
    SELECT CAST('123' AS UNSIGNED) AS number;

  • CONVERT(): 功能与 CAST() 类似,用于类型转换。

    -- 示例:将日期字符串转换为日期类型
    SELECT CONVERT('2023-01-01', DATE) AS converted_date;

相关推荐
尽兴-1 小时前
企业数据库选型与演进:Oracle、达梦、MySQL 与分库分表实践
数据库·mysql·oracle·分库分表
IT瑞先生2 小时前
Docker快速部署Mysql的三种方法——实操篇
mysql·adb·docker
数据库小学妹2 小时前
MySQL在线DDL实战:ALGORITHM三种算法对比+gh-ost变更管理SOP
mysql·dba·数据库运维·在线ddl·mdl锁·sql变更管理
Ethan01074 小时前
隔离级别管读,乐观锁管写——RC/RR 与写冲突的本质
mysql
熊文豪4 小时前
【金仓数据库征文】不装中间件的 MySQL→金仓在线迁移,mysql_fdw 全流程,和一个差点漏掉的 emoji
数据库·mysql·中间件·电科金仓
C++、Java和Python的菜鸟4 小时前
第5章 后端Web基础 (MySQL基础)
前端·mysql·adb
IT瑞先生6 小时前
MariaDB与Mysql差异及版本对照
数据库·mysql·mariadb
秋风渡.6 小时前
MySQL数据库操作
数据库·mysql
乐橙开放平台7 小时前
养殖 SaaS 笔记:乐橙 IoT 物模型管环境,视频 OpenAPI 管回看
数据库·笔记·物联网·mysql·音视频
鸽芷咕9 小时前
MySQL/PostgreSQL 迁移金仓 KES:LEFT JOIN 丢数据排查与避坑指南
数据库·mysql·postgresql