• mysql数据库的多表查询,子查询,联合查询


    /*多表查询*/
    /*交叉连接*(表1条数*表2条数)*/
    SELECT * FROM emp JOIN dept;
    /*内连接(在交叉连接基础上加条件)*/
    SELECT * FROM emp JOIN dept ON deptid=id;
    SELECT * FROM emp JOIN dept ON emp.deptid=dept.id;
    /*左外连接*(以左表为主表)*/;
    SELECT * FROM product_type LEFT JOIN product ON product.`protype_id`=product_type.`protype_id`;
    /*右外连接*(以右表为主表)*/;
    SELECT * FROM product_type RIGHT JOIN product ON product.`protype_id`=product_type.`protype_id`;

    /*子查询:把一个查询结果当作另一个查询的条件*/
    /*找出索尼手机所属类别*/
    SELECT protype_id FROM product WHERE pro_name LIKE '%索尼%4G手机%';
    SELECT protype_name FROM product_type WHERE protype_id=(
    SELECT protype_id FROM product WHERE pro_name LIKE '%索尼%4G手机%'
    );
    /*找出所有属于手机数码的产品*/
    SELECT * FROM product WHERE protype_id=(
    SELECT protype_id FROM product_type WHERE protype_name='手机数码'
    );
    /*找出所有属于手机数码或者电脑办公的产品*/
    SELECT protype_id FROM product_type WHERE protype_name='手机数码' OR protype_name='电脑办公';
    SELECT * FROM product WHERE protype_id IN(
    SELECT protype_id FROM product_type WHERE protype_name='手机数码' OR protype_name='电脑办公'
    );

    /*联合查询*/
    CREATE TABLE app1(
        aid INT PRIMARY KEY AUTO_INCREMENT,
        aname VARCHAR(10),
        adesc VARCHAR(50)
    );
    CREATE TABLE bpp1(
        bid INT PRIMARY KEY AUTO_INCREMENT,
        bname VARCHAR(10),
        bdesc VARCHAR(50)
    );
    INSERT INTO app1(aname,adesc) VALUES('熊大','保护森林');
    INSERT INTO app1(aname,adesc) VALUES('光头强','砍树');
    INSERT INTO bpp1(bname,bdesc) VALUES('小红帽','傻吊');
    INSERT INTO bpp1(bname,bdesc) VALUES('大灰狼','牛逼');
    SELECT aid,adesc FROM app1
    UNION
    SELECT bname,bdesc FROM bpp1;

  • 相关阅读:
    ES学习(十)
    ES学习(九)
    ES学习(八)
    ES学习(七)--documentAPI
    ES学习(六)--shard和replica机制
    ES学习(四)--嵌套聚合、下钻分析、聚合分析
    uniapp中常见的请求方法封装 --来之插件市场(全局方法封装(请求/正则/URI)
    工具/插件
    express中文件的上传 multer
    express中开发常用
  • 原文地址:https://www.cnblogs.com/zhaotao11/p/9988100.html
Copyright © 2020-2023  润新知