MySQL_入手<二>之删--改--查

接上 上篇文章继续

查询

# 比较运算
# 根据WHERE条件查找数据: = > < >= <= !=
select * from t_hero where age < 30;
# 逻辑判断
# AND : 指定多个条件,所有条件必须满足
select * from t_hero where age > 20 and state=‘吴‘;
# OR : 指定多个条件,满足任意一个条件即可
select * from t_hero where age > 20 or state=‘吴‘;
# NOT:不满足指定条件,
select * from t_hero where not age > 30;
select 列1,列2,... from 表名;
例:
select id,name from t_hero;

说明:主键列是自动增长,但是在全列插入时需要占位,通常使用0,插入成功后以实际数据为准
全列插入:值的顺序与表中字段的顺序对应
insert into 表名 values(...)
例:
insert into students values(0,‘郭靖‘,1,‘蒙古‘,‘2015-1-2‘);
部分列插入:值的顺序与给出的列顺序对应
insert into 表名(列1,...) values(值1,...)
例:
insert into students(name,hometown,birthday) values(‘黄蓉‘,‘桃花岛‘,‘2015-3-2‘);
上面的语句一次可以向表中插入一行数据,还可以一次性插入多行数据,这样可以减少与数据库的通信
全列多行插入:值的顺序与给出的列顺序对应
insert into 表名 values(...),(...)...;
例:
insert into classes values(0,‘python‘),(0,‘linux‘),(0,‘mysql‘),(0,‘js‘);
insert into 表名(列1,...) values(值1,...),(值1,...)...;
例:
insert into students(name) values(‘杨康‘),(‘杨过‘),(‘小龙女‘);

删除

delete from 表名 where 条件
例:
delete from students where id=5;

修改

update 表名 set 列1=值1,列2=值2... where 条件
例:
update students set gender=0,hometown=‘古墓‘ where id=5;

模糊查询

# 模糊查询 like
# % : 代表任意多个的任意字符
select * from t_hero where name like "%张飞%";

# _ : 代表一个任意字符,如果多个_ 则表示多个任意字符
select *from t_hero where name like "_张飞_";

固定范围查询:

# 范围查询: IN 表示查询的值指定的集合内;
select *from t_hero where age in (30, 45);
# 范围查询:NOT IN 表示查询的字符不在指定的集合内
select *from t_hero where age not in (30, 45);

空值查询

# IS NULL :表示查找数据为空的数据
select *from t_hero where state is null;
# IS NOT NULL: 表示查找非空的数据
select *from t_hero where state is  not null;

聚合函数

# count :统计个数,
select count(*) as "年龄大于30的人数"from t_hero where age > 30;
# max:统计某个列里的最大值,比如age
select max(age) as "蜀国的最大年龄"from t_hero where state = "蜀";
# min:统计某个列里的最小值
select min(age) as "魏国的最小年龄" from t_hero where state = "魏";
# sum: 统计某一列的数据之和,as 可以给查出的数据列起别名
select sum(age) as ‘魏国年龄总和‘ from t_hero where state = "魏";
# avg:统计某一列数据的平均值
select avg(age) as ‘魏国年龄平均数‘ from t_hero where state = "魏";

GROUP BY 分组操作

1. 单独使用:直接对数据进行分组(单独使用没有任何意义)
select * from t_hero group by state;
2. GROUP_CONCAT:对数据进行分组,并通过GOURP_CONCAT() 将指定列数据拼接到一起
select state, group_concat(name) from t_hero GROUP BY state;

3. 聚合函数:对数据进行分组,分组后的数据根据查询语句的聚合函数来统计指定的数据
SELECT gender, sum(age) FROM t_hero GROUP BY gender;

4. HAVING : 限制输出结果(对select 查询的结果进行限制输出):
# having是对最后select 的结果进行限制输出,having的字段必须在select查询的字段里
SELECT state, count(*) as num FROM t_hero GROUP BY state HAVING num >= 3;
SELECT state, count(*) as num FROM t_hero GROUP BY state HAVING state = ‘蜀‘;

排序:ORDER BY

# order by 对指定的列进行排序,
# 默认是升序(从小到大), ASC (ascend)
select * from t_hero ORDER BY id;
select * from t_hero ORDER BY id ASC;

# DESC 指定为降序(从大到小)
select * from t_hero ORDER BY id DESC;

# 配合where条件进行排序
select * from t_hero where state=‘蜀‘ and gender=‘男‘ ORDER BY age DESC;

原文地址:https://www.cnblogs.com/zhichao123/p/11252807.html

时间: 2024-08-05 00:27:23

MySQL_入手<二>之删--改--查的相关文章

Python---MySQL数据库之四大操作(增 删 改 查)

一.对数据库,表,记录---四大操作(增 删 改 查) 1.操作数据库 (1)对数据库(文件夹):进行增加操作 Create  database  库名; 例:  Create  database  db7 ; 查询库: show  databases; 结果: +-----------------------------+ | Database                   | +----------------------------+ | information_schema | |

ADO.NET 增 删 改 查

ADO.NET:(数据访问技术)就是将C#和MSSQL连接起来的一个纽带 可以通过ADO.NET将内存中的临时数据写入到数据库中 也可以将数据库中的数据提取到内存中供程序调用 ADO.NET所有数据访问技术的基础 连接数据库基本格式:需要两个类1.数据库连接类 SqlConnection2.数据库操作类 SqlCommand 1.连接数据库写连接字符串,立马就要想到有4点要写完,1.连接哪台服务器,2.连接哪个数据库,3.连接用户名,4.密码string sql = "server=.(服务器i

oracle 11g 建库 建表 增 删 改 查 约束

一.建库 1.(点击左上角带绿色+号的按钮) 2.(进入这个界面,passowrd为密码.填写完后点击下面一排的Test按钮进行测试,无异常就点击Connect) 二.建表 1-1. create table 表名1( Tid number(4) --primary key 列级约束(主键), Tname varchar(10) --ont null  非空约束,只能定义在列级约束, Tsex varchar2(2)--check (tsex='男'  or  tsex='女') 检查约束, T

数据库基础学习4--表格的 增 删 改 查(简单查询与高级查询)

一.增 C:create 增加,创建,向数据库里面添加数据. insert into Fruit values('K009','苹果',3.0,'高青',90,'') insert into Fruit(Ids,Name,Price,Source,Numbers) values('K010','苹果',3.0,'高青',90) 二.改 U:update修改,从数据库表里面修改数据. update Fruit set Source='烟台' where Ids='K001' 三.删 D:delet

SQL 增/删/改/查 (总结)

1.增 INSERT  INTO  表名  VALUES (" "," ") ; INSERT INTO 表名(字段)  VALUES(" "); 2. 删 DELETE   FROM 表名  WHERE  ... 3.改 UPDATE  表名 SET   ... WHERE  ... 4.查 SELECT × FROM  表名 ORDER BY ...

数据操作:增 删 改 查

1.创建数据库create database 库名gouse 库名go 2.创建表 create table 表名 ( 列名 类型, 列名 类型, 列名 类型 ) 例子: create table one( daihao varchar(10), shuming varchar(50), zuozhe varchar(10), chubanshe varchar(50), shijian datetime) 3.添加行记录 insert into 表名(列名,列名,列名) values('值',

1-24.list的增,删,改,查

增: 1.append(通过元素增加,默认加在最后print(a.append('hgf'))) 2.extend( 迭代的去增,就是把字符串的字符逐个去给这个列表加上去) 3.insert((按照索引去增加,前为索引,后为增加的字) 删: 1,pop(通过位置索引去删除) 2.del (通过索引,切片删除) 3.clear(清空列表) 4.remove(通过元素去删除) #返回值是什么意思? 改: a[]='i' print() 查: for i in a: print(a) 其他列表 1.s

php基础:数据库的含义和基本操作 增 删 改 查

//数据库是帮我们管理数据的一个软件,我们将数据给他,放进数据库里.他能很稳妥的帮我们管理起来,且效率很高.//php的大部分工作就是  php->连接数据库->写入数据->查出数据->格式化数据->显示出来,//数据库管理数据是以表的形式组成的,多行多列,表头声明好了,一个表创建好了,剩下的就是往里面添加数据 多张表放在一个文件夹里面就形成了库  mysql服务器帮我们管理多个库C:\wamp\bin\mysql\mysql5.6.12\data   数据库中的数据放在这个

Android 增,删,改,查 通讯录中的联系人

一.权限 操作通讯录必须在AndroidManifest.xml中先添加2个权限, <uses-permission android:name="android.permission.READ_CONTACTS"></uses-permission> <uses-permission android:name="android.permission.WRITE_CONTACTS"></uses-permission>