zoukankan      html  css  js  c++  java
  • mySQL数据库数据查询操作详解

       

    查询数据:

    简单查询:

    1.查询所有数据:

    select * from 表名

       #select * from info 查询所有列

    2.查询指定列:

    select code,name from info

    3.查询指定行(条件查询):

    select * from info where nation='n001'

    select * from info where code='p001' or/and nation='n001'

    4.给列制定名称

    select code as '代号' name as '姓名' from info

    5.模糊查询

    select * from car where name like '%/_奥迪%'  #'%'---表示在‘奥迪’前后可以出现n个字符,'_'表示在‘奥迪’前后可以出现1个字符  

    6.排序查询 

    select * from car order by price #根据价格进行排序,默认升序(asc),后面加desc降序

    select * from car order by price asc,oil desc #先根据价格升序排列,在次前提下出现价格相同的项再按油耗降序排列

    7.去重查询

    select distinct brand from car

    8.分页查询

    select * from car limit 5,5 跳过前面5条取5条数据

    9.统计查询(聚合函数)

    数据条数:select count(主键/*) from car

    取最大值/最小值:select max/min(price) from car

    取平均值:select avg(price) from car

    10.分组查询

    select brand,count(*) from car group by brand 

    select brand from car group by brand having count(*)>=3

    11.范围查询

    select * from car where price>=40 and price <=60

    select * from car where price between 40 and 60

    12.离散查询

    select* from car where price in/not in(10,20,30,40)

    高级查询:

    1.联合查询

    select code,name from info

    union

    select code,name from nation

    2.连接查询

    形成笛卡尔积

    select * from info,nation where info.nation=nation.code

    为了查询效率更高可以筛选出重复的数据:

    select info.name,info.sex,nation.name,info.birthday from info,nation where info.nation=nation.code

    select info.name,info.sex,nation.name,info.birthday from info join nation on info.nation=nation.code

    3.子查询

    ---子查询的结果作为父查询的条件使用

    i.无关子查询

    ---子查询和父查询没有关系,子查询单独拿出来可以执行

    a.查找民族为“汉族”的所有人员信息

    select * from info where nation =(select code from nation where name='汉族')

    b.查询所有厂商是“一汽大众”的车

    select * from car where brand in(select brand_code from brand where prod_code in(select prod_code from productor where prod_code='一汽大众'))

    ii.相关子查询

    查询油耗低于该系列平均油耗的汽车信息

    select * from car where oil<(该系列平均油耗)

    select avg(oil) from car where brand= 该系列

    select * from car a where oil<(select avg(oil) from car b where b.brand=a.brand)

  • 相关阅读:
    介绍本近期出的好书《软件调试》
    【转贴】Ogre的官僚主义批判
    Module切换,如何实现loading效果
    cacheAsBitmap = ‘true' 可以降低cpu,提高效率?
    设相对布局,则x,y更改无效 horizontalCenter="0" verticalCenter="120"
    flex 1119错误 找不到属性 static 解决方法,编译选项中选中 不启用rsl
    as3的get,set方法实现
    flex的Release编译会把trace也编译进去,
    Alert按钮的事件侦听
    一天编程发现的css名称问题,不支持下划线
  • 原文地址:https://www.cnblogs.com/rose1324/p/8144618.html
Copyright © 2011-2022 走看看