欢迎投稿

今日深度:

MySQL视图中如何使用IF和CASE语句,

MySQL视图中如何使用IF和CASE语句,


目录
  • MySQL视图使用IF和CASE语句
    • (1)创建员工信息表
    • (2)新增员工数据
    • (3)创建员工视图,在视图中使用IF和CASE语句
  • 总结

    MySQL视图使用IF和CASE语句

    在创建视图时,经常需要使用到MySQL的流程控制语句,如:IF语句和CASE语句。

    示例:

    创建MySQL视图中使用IF和CASE语句。

    (1)创建员工信息表

    -- 判断数据表是否存在,存在则删除
    DROP TABLE IF EXISTS tb_staff;
     
    -- 创建数据表
    CREATE TABLE IF NOT EXISTS tb_staff
    ( 
    	id INT AUTO_INCREMENT PRIMARY KEY COMMENT '编号',
    	NAME VARCHAR(50) NOT NULL COMMENT '姓名',
    	sex INT COMMENT '性别(1:男;2:女;)',
    	dept_code VARCHAR(10) COMMENT '部门编号',
    	is_post BIT COMMENT '是否在职(0:否;1:是)'
    ) COMMENT = '员工信息表';

    (2)新增员工数据

    -- 新增数据
    INSERT INTO tb_staff(NAME,sex,dept_code,is_post) VALUES('pan_junbiao的博客_01',1,'1001',1);
    INSERT INTO tb_staff(NAME,sex,dept_code,is_post) VALUES('pan_junbiao的博客_02',2,'1002',1);
    INSERT INTO tb_staff(NAME,sex,dept_code,is_post) VALUES('pan_junbiao的博客_03',1,'1003',0);
    INSERT INTO tb_staff(NAME,sex,dept_code,is_post) VALUES('pan_junbiao的博客_04',1,'1001',1);
    INSERT INTO tb_staff(NAME,sex,dept_code,is_post) VALUES('pan_junbiao的博客_05',2,'1008',1);
    INSERT INTO tb_staff(NAME,sex,dept_code,is_post) VALUES('pan_junbiao的博客_06',1,'1001',0);
    INSERT INTO tb_staff(NAME,sex,dept_code,is_post) VALUES('pan_junbiao的博客_07',2,'1002',1);
    INSERT INTO tb_staff(NAME,sex,dept_code,is_post) VALUES('pan_junbiao的博客_08',1,'1003',0);
    INSERT INTO tb_staff(NAME,sex,dept_code,is_post) VALUES('pan_junbiao的博客_09',1,'1001',1);
    INSERT INTO tb_staff(NAME,sex,dept_code,is_post) VALUES('pan_junbiao的博客_10',2,'1008',0);

    查询员工信息表结果:

    (3)创建员工视图,在视图中使用IF和CASE语句

    -- 创建视图
    CREATE OR REPLACE VIEW view_staff
    AS
    	SELECT id 
    	,NAME
    	,IF(sex=1,'男','女') AS sex_name
    	,CASE dept_code
    		WHEN '1001' THEN '研发部'
    		WHEN '1002' THEN '人事部'
    		WHEN '1003' THEN '财务部'
    		ELSE '其他'
    	END AS dept_name
    	,IF(is_post,'在职','离职') AS is_post_name
    	FROM tb_staff
    ;

    查询员工视图结果:

    总结

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持PHP之友。

    您可能感兴趣的文章:
    • MySQL表的内外连接和视图使用实战练习
    • MySQL视图(view)的基本用法及说明
    • Mysql创建视图中文乱码如何修改docker里的配置
    • 搭建Mysql视图可视化操作(保姆级)

    www.htsjk.Com true http://www.htsjk.com/Mysql/47516.html NewsArticle MySQL视图中如何使用IF和CASE语句, 目录 MySQL视图使用IF和CASE语句 (1)创建员工信息表 (2)新增员工数据 (3)创建员工视图,在视图中使用IF和CASE语句 总结 MySQL视图使用IF和CASE语句...
    评论暂时关闭