sql高级查询

子查询:
      是嵌套在select ,insert ,update ,delete语句或者其他的子查询中的查询语句。
  一、一般的使用方式:
    select * from 表1 where 列 运算符 (子查询)
   注意:1.先执行子查询,在执行外查询(主查询)
         2.显示结果中只有主查询的内容
         3.子查询与比较运算符连用时,子查询只能返回单个值,不能是多个值
  二、子查询和连接查询
      1.子查询都可以代替连接查询
      2.不是所有的连接查询都可以代替子查询
      3.子查询用于insert ,delete,update时筛选条件
      4.连接查询用于查看多个表的数据(结果集中包含多个表的信息的时候),
三、in或是not in
     select * from 表名1 where 列 in(子查询)子查询可以返回某一列中的多个值,不能是多列
四、exists (子查询)
     select * from 表名1 where exists(子查询) 子查询有数据行的话返回true,否则返回false,一般都可以用in代替

posted @ 2016-11-04 22:09  穆雄雄  阅读(136)  评论(0编辑  收藏  举报