• Mysql连接查询示例语句


    SELECT *FROM ssm_emp;
    
    SELECT * FROM ssm_dept;
    
    
    #查询两表交集
    SELECT * FROM ssm_emp e
    INNER JOIN ssm_dept d
    ON e.`d_id`=d.`dept_id`;
    
    #左表为主表,左表中不符合连接条件的列用null填充,右表中不符合连接条件的列不显示,并按`emp_id`默认升序排列
    SELECT * FROM ssm_emp e
    LEFT JOIN ssm_dept d
    ON e.`d_id`=d.`dept_id`
    ORDER BY e.`emp_id`;
    
    #查询左表中不符合连接条件的列
    SELECT * FROM ssm_dept d
    LEFT JOIN ssm_emp e
    ON d.`dept_id`=e.`d_id`
    WHERE e.`emp_id` IS NULL;
    
    #查询左表中符合连接条件的列
    SELECT * FROM ssm_emp e
    LEFT JOIN ssm_dept d
    ON e.`d_id`=d.`dept_id`
    WHERE d.`dept_id` IS NOT NULL;
    
    #联合查询,要求两个查询结果的列必须相同
    SELECT e.`emp_id`,e.`emp_name`,d.`dept_id`,d.`dept_name` FROM ssm_emp e
    LEFT JOIN ssm_dept d
    ON e.`d_id`=d.`dept_id`
    UNION
    SELECT e.`emp_id`,e.`emp_name`,d.`dept_id`,d.`dept_name` FROM ssm_dept d
    LEFT JOIN ssm_emp e 
    ON e.`d_id`=d.`dept_id`
    WHERE e.`emp_id` IS NULL;
    
    #联合查询,并把结果作为一个新表并条件降序排列
    SELECT * FROM (
    	SELECT e.`emp_id`,e.`emp_name`,d.`dept_id`,d.`dept_name` FROM ssm_emp e
    	LEFT JOIN ssm_dept d
    	ON e.`d_id`=d.`dept_id`
    	UNION
    	SELECT e.`emp_id`,e.`emp_name`,d.`dept_id`,d.`dept_name` FROM ssm_dept d
    	LEFT JOIN ssm_emp e 
    	ON e.`d_id`=d.`dept_id`
    	WHERE e.`emp_id` IS NULL
    ) AS t 
    ORDER BY t.dept_id DESC;
    
    
  • 相关阅读:
    Senventh Week(补充完整)
    Sixth Week(补充完整)
    Fifth Week(补充完整)
    Fourth Week (补充完整)
    九大内置对象
    matlab 简单绘图
    matlab ./
    困惑
    【转】matlab中inf
    matlab x~=0
  • 原文地址:https://www.cnblogs.com/juyss/p/13909882.html
Copyright © 2020-2023  润新知