数据库的查询

查询指定列

select 列名,列名,... from 表名;
-- 例子
select id,name from student;

查询时添加常量列

SELECT pro_name商品名称 AS '商品名称',price价格 FROM product;

查询时合并

  注意:合并列只能合并数值类型的字段

select sname,(servlet+jsp+html) as  '总成绩'
    from student;

查询时去除重复记录

-- *代表所有列
select * from student;
-- 去除重复列
SELECT DISTINCT sex FROM student;

条件查询(where)

  逻辑条件  and   or

SELECT * FROM student WHERE sex ='' AND sname ='边通';
SELECT * FROM student WHERE sex =''  OR sname ='张三';

   比较条件   >   <   >=  <=  =  <>(不等于)   between and (等价于>= 且 <=)

例子

select * from student where servlet >=60;
select * from student where jsp <>60;
select * from student where html between 60 and 100;
select * from student where html >=60 and html <=100 ;

 

   判断条件(null和空字符串)

SELECT * FROM student WHERE sex IS NULL;-- 判断null
SELECT * FROM student WHERE sex IS NOT NULL;-- 判断不是null
SELECT * FROM student WHERE sname ='';-- 判断空字符串
-- 判断不是空的
SELECT *FROM student WHERE sex IS NOT NULL AND sex <>'';

 

  模糊条件  like

SELECT * FROM product WHERE pro_name商品名称 LIKE '%索尼%';

-- % : 表示任意个字符

-- _ : 表示一个字符

 

聚合查询

  常用的聚合函数: sum()  avg()  max()  min()  count()

 

-- 查询student 所有servlet总成绩,竖着
SELECT SUM(servlet) FROM student ;
-- 查询平均成绩
SELECT AVG(servlet) FROM student ;
-- 查询最大成绩
SELECT MAX(jsp) FROM student ;
-- 查询最小成绩
SELECT MIN(jsp) FROM student ; -- 查询表中多少人,*先每列统计完,选最高的列的数量 SELECT COUNT(*) FROM student ;

 

 注意:count()函数统计的数量不包含null的数据

 分页查询

  limit 起始行,查询几行

  起始行从0开始

SELECT * FROM student LIMIT 0,2;-- 从第一页的第0条开始,显示两条

   分页查询公式

select * from student limit (当前页-1)*每页显示多少条,每页显示多少条;

 

 查询排序

  asc 顺序,升序,正序,(默认正序)

SELECT * FROM student ORDER BY  html;-- 升序

-- 查询student所有的男同学html成绩顺序排序
SELECT * FROM student WHERE sex ='' ORDER BY html;

  desc 反序, 降序

SELECT * FROM student ORDER BY  html desc; -- 降序

 

 

-- 升序和降序一起用
SELECT * FROM student ORDER BY jsp ASC ,html DESC;
-- 先按照主排序,当字段值相同时,再次排序

 

 分组查询  group by

-- 查询男女人数
select sex ,count(*) from student group by sex;

 

分组查询后筛选

  注意: 分组之前条件使用where关键字,分组之后条件使用having关键字

SELECT sex ,COUNT(*) FROM student GROUP BY sex
    HAVING COUNT(*)>2;

 

posted @ 2018-07-10 19:10  吻泪  阅读(204)  评论(0编辑  收藏  举报
Live2D