• sql 基础--mysql 5 (6)


    12.子查询

      子查询进行过滤

    mysql> select msg from pw_luck where name = 'wang5'
        -> ;
    +------+
    | msg  |
    +------+
    | 1001 |
    | 1000 |
    | 1000 |
    |  100 |
    |  100 |
    +------+
    5 rows in set (0.03 sec)
    
    mysql> select uid from pw_luck where msg in (select msg from pw_luck where name = 'wang5');
    +-----+
    | uid |
    +-----+
    |   0 |
    |   1 |
    |   2 |
    |   3 |
    |   7 |
    |   8 |
    |   9 |
    |  10 |
    |  12 |
    |  13 |
    |  14 |
    |  15 |
    +-----+
    12 rows in set (0.02 sec)

      作为计算字段使用子查询 ,联表查询

      

    mysql> select uid,price,(select count(*) from pw_luck where pw_luck.uid=pw_price.uid) as pw_luck_cou
    nt from pw_price order by uid;
    +-----+-------+---------------+
    | uid | price | pw_luck_count |
    +-----+-------+---------------+
    |   1 |   100 |             1 |
    |   2 |  1000 |             1 |
    |   3 |  2000 |             1 |
    +-----+-------+---------------+
    3 rows in set (0.02 sec)
    

      13联结表

      外键:某个表中的一列,他包含另一个表中的主键值,定义了两表之间的关系。

    mysql> select pw_luck.uid,name,msg,price from pw_luck,pw_price where pw_luck.uid=pw_price.uid order
    by pw_luck.uid;
    +-----+----------+------+-------+
    | uid | name     | msg  | price |
    +-----+----------+------+-------+
    |   1 | zhangsan |  100 |   100 |
    |   2 | lisi     | 1001 |  1000 |
    |   3 | wang5    | 1001 |  2000 |
    +-----+----------+------+-------+
    3 rows in set (0.01 sec)

      卡迪尔积: 无 where的行数是table1和table2行数的乘积

    mysql> select pw_luck.uid,name,msg,price from pw_luck,pw_price order by pw_luck.uid;
    +-----+-----------+------+-------+
    | uid | name      | msg  | price |
    +-----+-----------+------+-------+
    |   0 | Wilson    |  100 |   100 |
    |   0 | Wilson    |  100 |  1000 |
    |   0 | Wilson    |  100 |  2000 |
    |   1 | zhangsan  |  100 |  2000 |
    |   1 | zhangsan  |  100 |   100 |
    |   1 | zhangsan  |  100 |  1000 |
    |   2 | lisi      | 1001 |  2000 |
    |   2 | lisi      | 1001 |   100 |
    |   2 | lisi      | 1001 |  1000 |
    |   3 | wang5     | 1001 |  1000 |
    |   3 | wang5     | 1001 |  2000 |
    |   3 | wang5     | 1001 |   100 |
    |   7 | zhangsan7 | 1000 |   100 |
    |   7 | zhangsan7 | 1000 |  1000 |
    |   7 | zhangsan7 | 1000 |  2000 |
    |   8 | zhangsan8 | 1000 |  2000 |
    |   8 | zhangsan8 | 1000 |   100 |
    |   8 | zhangsan8 | 1000 |  1000 |
    |   9 | zhangsan9 | 1000 |  2000 |
    |   9 | zhangsan9 | 1000 |   100 |
    |   9 | zhangsan9 | 1000 |  1000 |
    |  10 | wang5     | 1000 |  1000 |
    |  10 | wang5     | 1000 |  2000 |
    |  10 | wang5     | 1000 |   100 |
    |  11 | wang5%    | 2000 |  1000 |
    |  11 | wang5%    | 2000 |  2000 |
    |  11 | wang5%    | 2000 |   100 |
    |  12 | WANG5     | 1000 |   100 |
    |  12 | WANG5     | 1000 |  1000 |
    |  12 | WANG5     | 1000 |  2000 |
    |  13 | wang5     |  100 |  2000 |
    |  13 | wang5     |  100 |   100 |
    |  13 | wang5     |  100 |  1000 |
    |  14 | wang5     |  100 |  2000 |
    |  14 | wang5     |  100 |   100 |
    |  14 | wang5     |  100 |  1000 |
    |  15 | zhangsan7 | 1000 |  1000 |
    |  15 | zhangsan7 | 1000 |  2000 |
    |  15 | zhangsan7 | 1000 |   100 |
    |  16 | zhangsan7 | 1002 |  1000 |
    |  16 | zhangsan7 | 1002 |  2000 |
    |  16 | zhangsan7 | 1002 |   100 |
    |  17 | zhangsan7 | 1002 |  2000 |
    |  17 | zhangsan7 | 1002 |   100 |
    |  17 | zhangsan7 | 1002 |  1000 |
    +-----+-----------+------+-------+
    45 rows in set (0.03 sec)
    View Code

      联结多个表  where语句用and 连接

  • 相关阅读:
    表单序列化
    创建.ignore文件
    头条数学救火队长马丁的一道中山大学研究生入学考试数学分析题
    实数理论
    方法
    目标
    闭区间有限覆盖定理
    零值定理的确界原理证明方法,来自百度
    各种范例
    零值定理
  • 原文地址:https://www.cnblogs.com/wjw334/p/4293108.html
Copyright © 2020-2023  润新知