第二百七十八节,MySQL数据库-表内容操作
MySQL数据库-表内容操作
1、表内容增加
insert into 表 (列名,列名...) values (值,值,值...); 添加表内容添加一条数据
insert into 表 (列名,列名...) values (值,值,值...),(值,值,值...); 添加表内容添加多条数据,多条数据括号逗号隔开
insert into 表 (列名,列名...) select (列名,列名...) from 表; 添加表内容
-- insert into 表 (列名,列名...) values (值,值,值...);添加表内容
-- insert into 表 (列名,列名...) values (值,值,值...),(值,值,值...);添加表内容
-- insert into 表 (列名,列名...) select (列名,列名...) from 表;添加表内容 INSERT INTO test (yhm,mim) VALUES ('林秀民','');

2、删除表里内容
delete from 表 删除表里的所有内容
delete from 表 where id=3; 删除表里id等于3的数据
delete from 表 where id=2 and 列名称=列值; 删除表里id等于2并且列名等于指定值的数据
-- delete from 表
-- delete from 表 where id=1
-- delete from 表 where id=1 and 列名称=列值 DELETE FROM test WHERE id=3;

-- delete from 表
-- delete from 表 where id=1
-- delete from 表 where id=1 and 列名称=列值 DELETE FROM test WHERE id=2 AND yhm='林秀民';

3、修改表里的内容
update 表 set 列名称= '新值'; 将表里指定的列全部修改成新值
update 表 set 列名称= '新值' where id=1; 将表里指定id的指定列修改成新值
update 表 set 列名称= '新值' where id=6 and 列名称=指定值; 修改test表里id等于6并且mim为789456数据,的yhm列新值为王五
-- update 表 set 列名称= '新值'; 将表里指定的列全部修改成新值 UPDATE test SET yhm='张三';

-- update 表 set 列名称= '新值' where id=1; 将表里指定id的指定列修改成新值 UPDATE test SET yhm='王麻子' WHERE id=5;

-- update 表 set 列名称= '新值' where id=1 and 列名称=指定值; 修改test表里id等于6并且mim为789456数据,的yhm列新值为王五 UPDATE test SET yhm='王五' WHERE id=6 AND mim='';

4、查询表里的内容
select * from 表; 查询表里的所有列,*表示所有列【不推荐使用*效率很低】
select * from 表 where id > 1; 查询表里id大于1的所有列,*表示所有列【不推荐使用*效率很低】
select 列,列,列 from 表 where id > 1; 查询表里id大于1的指定列
select 列 as 临时列名,列 as 临时列名,列 as 临时列名 from 表 where id > 1; 查询表里id大于1的指定列,返回时临时改名列名称
-- select * from 表; 查询表里的所有列,*表示所有列【不推荐使用*效率很低】 SELECT * FROM test;

-- select * from 表 where id > 1; 查询表里id大于1的所有列,*表示所有列【不推荐使用*效率很低】 SELECT * FROM test WHERE id>1;

-- select 列,列,列 from 表 where id > 1; 查询表里id大于1的指定列 SELECT id,yhm FROM test WHERE id>1;

-- select 列 as 临时列名,列 as 临时列名,列 as 临时列名 from 表 where id > 1; 查询表里id大于1的指定列,返回时临时改名列名称 SELECT id AS a1,yhm AS a2,mim AS a3 FROM test WHERE id>1;

5、操作表内容之条件
select 列 from 表 where id > 1 and name != 'alex' and num = 12;
select 列 from 表 where id between 5 and 16;
select 列 from 表 where id in (11,22,33)
select 列 from 表 where id not in (11,22,33)
select 列 from 表 where id in (select nid from 表)
select id,yhm,mim from test where id > 1 and yhm != '王五' and mim = 123456; -- 查询表里id大于1并且yhm不等于王五并且mim等于123456的,数据指定列 select id,yhm,mim from test where id between 10 and 16; -- 查询表里id范围10-16之间的数据,指定的列 select id,yhm,mim from test where id in (1,4,7); -- 查询表里id为1、4、7的数据指定列 select id,yhm,mim from test where id not in (11,12,13); -- 查询表里id不为11、12、13的数据指定列 select id,yhm,mim from test where id in (select id from test2); -- 获取一张表的id作为当前表的查询id
WHERE表达式的常用运算符
|
MYSQL运算符 |
含义 |
|
= |
等于 |
|
< |
小于 |
|
> |
大于 |
|
<= |
小于或等于 |
|
>= |
大于或等于 |
|
!= |
不等于 |
|
IS NOT NULL |
具有一个值 |
|
IS NULL |
没有值 |
|
BETWEEN |
在范围内 |
|
NOT BETWEEN |
不在范围内 |
|
IN |
指定的范围 |
|
OR |
两个条件语句之一为真 |
|
AND |
两个条件语句都为真 |
|
NOT |
条件语句不为真 |
6、操作表内容之通配符
通配符可以做模糊查询
select * from 表 where name like 'e%' -e开头的所有(%表示多个字符串,表示查询开头为e后面可以是多个字符的数据)
select * from 表 where name like '%e%' -表示查询中间为e前后可以是多个字符的数据
select * from 表 where name like 'e_' -e开头的所有(_表示一个字符,表示查询开头为e后面可以是一个字符的数据)
select * from 表 where name like '_e_' -表示查询中间为e前后可以是一个字符的数据
select id,yhm,mim from test where yhm like 'e%'; -- e开头的所有(%表示多个字符串,表示查询开头为e后面可以是多个字符的数据) select id,yhm,mim from test where yhm like '%e%'; -- 表示查询中间为e前后可以是多个字符的数据 select id,yhm,mim from test where yhm like 'e_' ; -- e开头的所有(_表示一个字符,表示查询开头为e后面可以是一个字符的数据) select * from 表 where name like '_e_'; -- 表示查询中间为e前后可以是一个字符的数据
7、操作表内容之限制
限制一般做分页
select * from 表 limit 5; - 查询前5行
select * from 表 limit 4,5; - 从第4行开始查询5行
select * from 表 limit 5 offset 4 - 从第4行开始查询5行
select id,yhm,mim from test limit 5; -- 查询前5行 select id,yhm,mim from test limit 4,5; -- 从第4行开始查询5行 select id,yhm,mim from test limit 5 offset 4 -- 从第4行开始查询5行
8、操作表内容之排序
一般默认是从第一列id排序的
select * from 表 order by 排序列 asc; - 根据 “列” 从小到大排列
select * from 表 order by 排序列 desc; - 根据 “列” 从大到小排列
select * from 表 order by 排序列1 desc,排序列2 asc; - 根据 “列1” 从大到小排列,如果排序列1数据有相同,则按列2从小到大排序
select id,yhm,mim from test order by id asc; -- 根据 “列” 从小到大排列(asc从小到大排列) select id,yhm,mim from test order by id desc; -- 根据 “列” 从大到小排列(desc从大到小排列) select id,yhm,mim from test order by id desc,mim asc; -- 根据 “列1” 从大到小排列,如果排序列1数据有相同,则按列2从小到大排序
9、操作表内容之分组
分组一般就是一个分组列记录每条数据所属什么类型如:普通会员、超级会员、黄金会员

select 分组列 from 表 group by 分组列; -查询分组列里有什么分组
-- select 分组列 from 表 group by 分组列; -查询分组列里有什么分组
select fzu from test group by fzu;

select 分组列,COUNT(分组列) from 表 group by 分组列; -查询统计每个分组的数量
-- select 分组列,COUNT(分组列) from 表 group by 分组列; -查询统计每个分组的数量
select fzu,COUNT(fzu) from test group by fzu;

select MAX(列),分组列,COUNT(分组列) from 表 group by 分组列; -查询表里的分组,MAX(列)显示当前分组里最大的id、显示分组、COUNT(分组列)显示当前分组统计数
分组常用函数:
MAX(列):显示当前组里指定列最大的数据
MIN(列):显示当前组里指定列最小的数据
COUNT(分组列):统计所属当前分组的数据
sum(列):显示当前组指定列相加的和
avg(列):显示当前组指定列的平均数
-- select MAX(列),分组列,COUNT(分组列) from 表 group by 分组列; -查询表里的分组,MAX(列)显示当前分组里最大的id、显示分组、COUNT(分组列)显示当前分组统计数
-- 分组常用函数:
-- MAX(列):显示当前组里指定列最大的数据
-- MIN(列):显示当前组里指定列最小的数据
-- COUNT(分组列):统计所属当前分组的数据
-- sum(列):显示当前组指定列相加的和
-- avg(列):显示当前组指定列的平均数 select MAX(id),MIN(id),SUM(id),avg(id),fzu,COUNT(fzu) from test group by fzu;

select 列 from 表 group by 分组表 having COUNT(统计列) > 3 -查看表里分组里、指定列大于10的、指定列信息
-- select 列 from 表 group by 分组表 having COUNT(统计列) > 3 -查看表里分组里、指定列大于10的、指定列信息
select fzu from test group by fzu having COUNT(fzu) > 3

注意:group by 必须在where之后,order by之前
10、操作表内容之组合
组合就是将两张表数据显示出来,注意两张表显示的列数量要是一样的
UNION组合
SELECT id,yhm FROM test
UNION
SELECT id,gzi FROM text2;

如果组合两张表都只显示1列、那么相同的数据会被去重。
SELECT id FROM test
UNION
SELECT id FROM text2;

如果不想去重就在UNION后面加上all
SELECT id FROM test
UNION ALL
SELECT id FROM text2;

第二百七十八节,MySQL数据库-表内容操作的更多相关文章
- MySQL数据库-表内容操作
1.表内容增加 insert into 表 (列名,列名...) values (值,值,值...); 添加表内容添加一条数据 insert into 表 (列名,列名...) values (值,值 ...
- 第三百七十八节,Django+Xadmin打造上线标准的在线教育平台—django自带的admin后台管理介绍
第三百七十八节,Django+Xadmin打造上线标准的在线教育平台—django自带的admin后台管理介绍 配置django的admin数据库管理后台 首先urls.py配置数据库后台路由映射,一 ...
- 第二百七十九节,MySQL数据库-pymysql模块操作数据库
MySQL数据库-pymysql模块操作数据库 pymysql模块是python操作数据库的一个模块 connect()创建数据库链接,参数是连接数据库需要的连接参数使用方式: 模块名称.connec ...
- 第二百八十八节,MySQL数据库-索引、limit分页、执行计划、慢日志查询
MySQL数据库-索引.limit分页.执行计划.慢日志查询 索引,是数据库中专门用于帮助用户快速查询数据的一种数据结构.类似于字典中的目录,查找字典内容时可以根据目录查找到数据的存放位置,然后直接获 ...
- 第二百七十六节,MySQL数据库,【显示、创建、选定、删除数据库】,【用户管理、对用户增删改查以及授权】
MySQL数据库,[显示.创建.选定.删除数据库],[用户管理.对用户增删改查以及授权] 1.显示数据库 SHOW DATABASES;显示数据库 SHOW DATABASES; mysql - 用户 ...
- 第二百七十五节,MySQL数据库安装和介绍
MySQL数据库安装 一.概述 1.什么是数据库 ? 答:数据的仓库,称其为数据库 2.什么是 MySQL.Oracle.SQLite.Access.MS SQL Server等 ? 答:他们均是一种 ...
- 第二百八十二节,MySQL数据库-MySQL视图
MySQL数据库-MySQL视图 1.视图是一个虚拟表(非真实存在),其本质是[根据SQL语句获取动态的数据集,并为其命名],用户使用时只需使用[名称]即可获取结果集,并可以将其当作表来使用. 2.也 ...
- MySQL数据库---表的操作
存储引擎 表就是文件,表的存储引擎就是文件的存储格式,即数据的组织存储方式. 字段类型 1.整数类型 整数类型:TINYINT SMALLINT MEDIUMINT INT BIGINT 作用:存储年 ...
- 第二百九十节,MySQL数据库-MySQL命令行导出导入数据库,数据库备份还原
MySQL命令行导出导入数据库,数据库备份还原 MySQL命令行导出数据库:1,进入MySQL目录下的bin文件夹:cd MySQL中到bin文件夹的目录如我输入的命令行:cd C:\Program ...
随机推荐
- Oracle中CBO优化器简介
Oracle中CBO优化器简介 Oracle数据库中的优化器是SQL分析和执行的优化工具.它负责制定SQL的执行计划,也就是它负责保证SQL的执行计划的效率最高,比如优化器决定Oracle以什么样的方 ...
- 05-maven学习-构建web项目
1,新增maven项目 然后输入相应包名,项目名,创建如下项目 发现以上有报错,需要进行如下操作: 下面文章转载自:http://blog.csdn.net/zhshulin/article/deta ...
- llinux环境变量查看和修改
查看全局环境变量:env 查看所有环境变量:set 删除一个变量:unset [变量名] #只针对当前会话 设置一个变量:name=songjiankang export name #将这个变量提升为 ...
- servlet request
request.getRequestURI(); request.getRequestURL(); getQueryString();//返回查询信息 getRemoteAddr();//得到来访者地 ...
- ubuntu——主题更新,Ubuntu-tweak安装
1.首先打开终端 2.在终端中输入sudo apt-add-repository ppa:tualatrix/ppa 回车后输入密码等一会,导入密钥 3.再输入sudo apt-get update ...
- JSP,PHP,Python,Ruby,Perl概要及各自特点
JSP,PHP,Python,Ruby,Perl概要及各自特点 博客分类: JSP PHP Python Ruby Perl概要及各自特点 javascript 互联网技术日新月异,编程的语言层出不 ...
- 推荐算法——非负矩阵分解(NMF)
一.矩阵分解回想 在博文推荐算法--基于矩阵分解的推荐算法中,提到了将用户-商品矩阵进行分解.从而实现对未打分项进行打分. 矩阵分解是指将一个矩阵分解成两个或者多个矩阵的乘积.对于上述的用户-商品矩阵 ...
- Android应用开发揭秘之优化技术
2013-06-28 第15章 优化技术 不管用什么语言进行开发,所有的优秀代码都会展示出共有的经典品质: 简练,可读性强,模块化,层次性,设计良好,高效,优雅,清晰等. Java程序员能够依 ...
- Android设计模式系列(1)--SDK源码之组合模式
Android中对组合模式的应用,可谓是泛滥成粥,随处可见,那就是View和ViewGroup类的使用.在android UI设计,几乎所有的widget和布局类都依靠这两个类.组合模式,Compos ...
- 值得分享的Bootstrap Ace模板实现菜单和Tab页效果(转)
Ace模板地址:http://code.google.com/p/ace-engine/wiki/AceTemplate(有时会打不开) Ace英文官网:http://wrapbootstrap.co ...