码迷,mamicode.com
首页 > 其他好文 > 详细

3.语句的增删改查

时间:2016-07-03 10:26:58      阅读:157      评论:0      收藏:0      [点我收藏+]

标签:

一、语法

技术分享
 1 having子句:有group by才能having子句,只有满足“条件表达式”中指定的条件的才能够输出。
 2 
 3 group by子句通常和count()、sum()等聚合函数一起使用。
 4 
 5 order by子句:按照“属性名”指定的字段进行排序。排序方式由“asc”和“desc”两个参数指出,默认是按照“asc”来排序,即升序。
 6 
 7 
 8 
 9 模糊查询:where like %%;
10 查询空值:where is null;
11 数据去重:distinct
12 与:and
13 或:or
14 
15 分组:group by
16 SELECT s_id ,COUNT(1) AS total FROM fruits GROUP BY s_id
17 
18 MYSQL中可以在GROUP BY中使用GROUP_CONCAT()函数,将每个分组中各个字段的值显示出来
19 
20 
21 SELECT s_id,GROUP_CONCAT(f_name) AS NAMES FROM fruits GROUP BY s_id
22 查询总条数:select count(*) from 表名;
23 
24 
25 select 字段名1,字段名2或[*] from  表名;
26 
27 --插入数据(有id序列)
28 insert into 表名(字段名1,字段名2,..) values(值1,值2,...);
29 
30 --修改数据
31 update 表名 set 列名=新值 where 字段名=字段值;
32 
33 --删除数据
34 delete from 表名 where 字段名=字段值;
基本操作语法

二、具体操作

技术分享
  1 create table students(
  2     id int unsigned not null auto_increment primary key,
  3     name varchar(20) not null,
  4     pwd varchar(20) not null,
  5     age int unsigned default 0,
  6    sex char(4) default 
  7  );
  8 
  9 --插入语句
 10 --INSERT INTO 表名(列名1,列名2,列名3,..) values(值1,值2,值3,..);
 11 
 12 insert into students(name,pwd,age) values(holly,123,18);
 13 insert into students(name,pwd,age) values(巴永华,123,18);
 14 
 15 --修改
 16 UPDATE 表名 SET 列名=新值 where 列名=[and 列名=值 ...]
 17 update students set pwd=123456 where id=1;
 18 
 19 --创建teacher表
 20 create table teacher(
 21     id int unsigned not null primary key,
 22     name varchar(20) not null,
 23     pwd varchar(20) not null,
 24     classid int(10) not null
 25  );
 26 
 27 --插入数据
 28 insert into teacher(id,name,pwd,classid) values(1,周波徐,123,1);
 29 insert into teacher(id,name,pwd,classid) values(2,张浩,123,1);
 30 insert into teacher(id,name,pwd,classid) values(3,黄东东,123,2);
 31 insert into teacher(id,name,pwd,classid) values(4,唐龙,123,2);
 32 
 33 --条件查询
 34 --SELECT * FROM 表名 WHERE 列名=值;
 35 select * from teacher where id=1;
 36 
 37 
 38 --查询所有
 39 --SELECT * FROM 表名
 40 select * from teacher;
 41 
 42 select * from teacher where classid=1;
 43 select * from teacher;
 44 
 45 update teacher set pwd=123456 where id=3;
 46 select * from teacher;
 47 
 48 delete from teacher where id=4;
 49 select * from teacher;
 50 
 51 insert into teacher(id,name,pwd,classid) values(4,张冉,123,2);
 52 insert into teacher(id,name,pwd,classid) values(5,徐光东,123,2);
 53 
 54 --使用聚合函数统计条数
 55 select count(*) from teacher;
 56 select count(1) from teacher;
 57 
 58 --1.根据编号分组查询
 59 select classid from teacher group by classid;
 60 
 61 --2.先根据classid分组,分组后查询classid=2 (分组后的条件写在having后)
 62 select classid from teacher group by classid having classid=2;
 63 
 64 --3.按照id降序查询
 65 select id,name from teacher order by id desc;
 66 
 67 --4.按照id升序(默认升序)
 68 select id,name from teacher order by id asc;
 69 
 70 --5.条件降序
 71 select name,id from teacher where id<4 order by id desc;
 72 
 73 --6.模糊查询,查以"张"开头(右模糊)
 74 select * from teacher where name like 张%;
 75 
 76 
 77 --7.模糊查询,查以"东"结尾(左模糊)
 78 select * from teacher where name like %东;
 79 
 80 --8.模糊查询,查询包含"光"关键字的(左右模糊==全模糊)
 81 select * from teacher where name like %光%;
 82 
 83 --8.1 去重查询
 84 select distinct id,name from teacher;
 85 
 86 --9.创建班级表
 87 create table classes
 88 (
 89   id int unsigned not null auto_increment primary key,
 90   name varchar(20) not null
 91 );
 92 
 93 --10.给班级表插入数据
 94 insert into classes(name) values(TB13);
 95 insert into classes(name) values(TB24);
 96 
 97 --11.查询classes数据
 98 select * from classes;
 99 
100 --12.teacher和classes联查
101   select c.id,c.name,t.id,t.name,t.pwd,t.classid
102   from teacher t,classes c
103   where t.classid=c.id;
104 
105 select c.id,c.name,t.id,t.name,t.pwd,t.classid
106  from classes c,teacher t
107  where t.classid=c.id;
108 
109 select *
110  from teacher t,classes c
111  where t.classid=c.id;
112 
113 --给列添加别名
114 select c.id cid,c.name cname,t.id tid,t.name tname,t.pwd
115  from classes c,teacher t
116  where t.classid=c.id;
117 
118 select c.id as cid,c.name as cname,t.id as tid,t.name as tname,t.pwd
119  from classes c,teacher t
120  where c.id=t.classid;
121 
122 --函数
123 --求最大值
124 select max(id) from teacher;
125 select max(id) as id最大值from teacher;
126 select max(id) id最大值from teacher;
127 
128 --最小值
129 select min(id) from teacher;
130 select min(id) as id最小值from teacher;
131 select min(id) id最小值from teacher;
132 
133 --平均值
134 select avg(id) from teacher;
135 select avg(id) as id平均值from teacher;
136 select avg(id) id平均值from teacher;
137 
138 --去重空格
139 select trim( 张冉 );
140 
141 --获取系统时间
142 select now();
143 
144 --将日期和时间分开查询
145 SELECT UTC_DATE(),UTC_TIME();
具体操作案例

 













 

3.语句的增删改查

标签:

原文地址:http://www.cnblogs.com/holly8/p/5636915.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!