zoukankan      html  css  js  c++  java
  • Navicat操作(2)

    交叉链接--笛卡尔积

    • #表1是主表,表2是从表,
    • select * from 表1,表2; # 连表,全关联,将两张表连在一起(可能有重复字段)
    • select * from 表1,表where 表1.id=表2.pid; #找到两表的对应关系 pid是关联字段
    • select 表1.name from 表1,表where 表1.id=表2.pid and 表1.name=""; # 筛选

    关联条件:

    • WHERE:适用于所有关联查询
    • ON:只能和JOIN一起使用,只能写关联条件,虽然关联条件可以并到WHERE中和其他条件一起写,但分开写可读性更好。
    • USING:只能和JOIN一起使用,而且要求两个关联字段在关联表中名称一致,而且只能表示关联字段值相等

    内连接:inner join

    • 隐式:SELECT [cols_list] from 表1,表2 where [condition]
    • 显式:SELECT [cols_list] from 表1 INNER JOIN 表2 ON [关联条件] where [其他筛选条件]
    • SELECT [cols_list] from 表1 CROSS JOIN 表2 ON [关联条件] where [其他筛选条件]
    • SELECT [cols_list] from 表1 JOIN 表2 ON [关联条件] where [其他筛选条件]

    左链接:left join

    右连接:right join

    全链接:full join

    外链接:outer join

    条件查询:where 

    分组查询:group by

    聚合函数

    • avg(【distinct】expr)返回expr 的平均值
    • count(【distinct】expr)返回expr的非NULL值的数目
    • MIN(【DISTINCT】 expr)返回expr的最小值
    • MAX(【DISTINCT】 expr)返回expr的最大值
    • SUM(【DISTINCT】 expr)返回expr的总和

    筛选:having

    排序:order by

    分页:limit

    子查询

    • where型子查询
    • from型子查询
    • exists型子查询

    where型子查询

    1. IN:等于任何一个 。例: a=IN( c , d )等价于a=c or a=d
    2. ALL:和子查询返回的所有值进行比较。例:  a>ALL( c , d) 等价于 a>c && a>d
    3. ANY:和子查询返回的任意一个值比较。例:a>ANY( c ,d ) 等价于 a>c or a>d
    4. EXISTS:判断子查询是否有返回结果(不关心具体行数和内容),如果返回则为TRUE,否则为FALSE。
  • 相关阅读:
    面试问题 集锦
    减少 lwip 消耗 的 RAM
    Blocking Master Example QT 自带 的 serial 即 串口 例子
    32位 的变量 用于表示 ms ,可以表示多少天那?
    centos 腾讯云 今天买了 18个月
    Linux BLE 基于 树莓派
    树莓派 4G模块 PPP 拨号 NDIS 拨号
    linux备份还原命令
    centos7中/tmp文件保存天数
    centos7查看可登陆用户
  • 原文地址:https://www.cnblogs.com/liang1013/p/13860646.html
Copyright © 2011-2022 走看看