MySQL数据库-表内容操作
1、表内容增加
insert into 表 (列名,列名...) values (值,值,值...); 添加表内容添加一条数据
insert into 表 (列名,列名...) values (值,值,值...),(值,值,值...); 添加表内容添加多条数据,多条数据括号逗号隔开
insert into 表 (列名,列名...) select (列名,列名...) from 表; 添加表内容
insert into class(caption) SELECT tname teacher;
#把teacher表tname添加到class中
2、删除表里内容
delete from 表 删除表里的所有内容
delete from 表 where id=3; 删除表里id等于3的数据
delete from 表 where id=2 and 列名称=列值; 删除表里id等于2并且列名等于指定值的数据
3、修改表里的内容
update 表 set 列名称= '新值'; 将表里指定的列全部修改成新值
update 表 set 列名称= '新值' where id=1; 将表里指定id的指定列修改成新值
update 表 set 列名称= '新值' where id=6 and 列名称=指定值; 修改test表里id等于6并且mim为789456数据,的yhm列新值为王五
-- update 表 set 列名称= '新值' where id=1 and 列名称=指定值; 修改test表里id等于6并且mim为789456数据,的yhm列新值为王五 UPDATE test SET yhm='王五' WHERE id=6 AND mim='789456';

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 列 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 表)
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前后可以是一个字符的数据
7、操作表内容之限制
限制一般做分页
select * from 表 limit 5; - 查询前5行
select * from 表 limit 4,5; - 从第4行开始查询5行
select * from 表 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从小到大排序
9、操作表内容之分组
select 分组列 from 表 group by 分组列; -查询分组列里有什么分组
select 分组列,COUNT(分组列) from 表 group by 分组列; -查询统计每个分组的数量
select MAX(列),分组列,COUNT(分组列) from 表 group by 分组列; -查询表里的分组,MAX(列)显示当前分组里最大的id、显示分组、COUNT(分组列)显示当前分组统计数
分组常用函数:
MAX(列):显示当前组里指定列最大的数据
MIN(列):显示当前组里指定列最小的数据
COUNT(分组列):统计所属当前分组的数据
sum(列):显示当前组指定列相加的和
avg(列):显示当前组指定列的平均数
select 列 from 表 group by 分组表 having COUNT(统计列) > 3 -查看表里分组里、指定列大于10的、指定列信息
注意: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数据库-表内容操作
MySQL数据库-表内容操作 1.表内容增加 insert into 表 (列名,列名...) values (值,值,值...); 添加表内容添加一条数据 insert into 表 (列名,列名. ...
- MySQL数据库---表的操作
存储引擎 表就是文件,表的存储引擎就是文件的存储格式,即数据的组织存储方式. 字段类型 1.整数类型 整数类型:TINYINT SMALLINT MEDIUMINT INT BIGINT 作用:存储年 ...
- MySQL数据库——表操作
I.表操作 一.创建表 基本语法如下: create table 表名( 列名 类型 是否可以为空, 列名 类型 是否可以为空 )ENGINE=InnoDB DEFAULT CHARSET=utf8: ...
- Database学习 - mysql 数据库 表操作
mysql 数据库 表操作 创建数据表 基本语法格式: 创建数据表: create table 表名( 字段名 datatype 约束, 字段名 datatype 约束, ...... ) 修改表名 ...
- 对mysql数据库表的相关操作
虫师博客(Python使用MySQL数据库(新)): https://www.cnblogs.com/fnng/p/3565912.html 1.更改表的结构,增加一个字段放置新增的属性 alter ...
- MySQL数据库(3)_MySQL数据库表记录操作语句
附: MYSQL5.7版本sql_mode=only_full_group_by问题 .查询当前sql_mode: select @@sql_mode .查询出来的值为: set @@sql_mode ...
- MySQL数据库表的数据插入、修改、删除、查询操作及实例应用
一.MySQL数据库表的数据插入.修改.删除和查询 CREATE DATABASE db0504; USE db0504; CREATE TABLE student ( sno ) NOT NULL ...
- 【代码学习】MYSQL数据库的常见操作
---恢复内容开始--- ============================== MYSQL数据库的常见操作 ============================== 一.mysql的连接与 ...
- mysql 数据库必备命令操作,入门练习一下
mysql 数据库必备命令操作 show databases: 查看所有的数据库: create database jfedu: 创建名为jfedu数据库: use nihao: 进入jfedu数据库 ...
随机推荐
- jquery for&&each的用法
var arr=['姚明','易建联','张继科']: each&&for用法 $.each(arr,function(index,value){ document.write(ind ...
- U启动安装原版Win7系统教程
1.制作u启动u盘启动盘2.下载原版win7系统镜像并存入u盘启动盘3.硬盘模式更改为ahci模式 第一步: 将准备好的u启动u盘启动盘插在电脑usb接口上,然后重启电脑,在出现开机画面时通过u盘启动 ...
- cv::ACCESS_MASK指定不明确的错误
今天想实现在opencv下使用模拟按键,结果出现cv::ACCESS_MASK指定不明确的错误,查找得到如下原因: 在winnt.h里面有一个cv的命名空间,同样定义了一个ACCESS_MASK,跟o ...
- 从R-CNN到FAST-RCNN再到Faster R-CNN
(Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks) R-CNN: (1)输入测试图像: ...
- Cracking The Coding Interview 4.1
//Implement a function to check if a tree is balanced. For the purposes of this question, a balanced ...
- error MSB8008: 指定的平台工具集(V120)未安装或无效。
打开项目属性->配置属性->右面,平台工作集,选为v10 如下图
- Android : 网络adb配置及有线端口占用解决方法
一.调试环境: Android Debug Bridge version 1.0.40: Nexus6P平板(Android 8.0系统): 二.网络ADB调试: 1. Android设备除了用有线u ...
- intelij idea常用设置
1.genneral设置 2.自动导包 3.设置显示行号和方法分隔符 4.忽略大小写提示代码 比如:输入str会让其提示String 5.去掉单行显示类,让idea多行显示,容易找到类 6.设置字体及 ...
- Driver 01 进程隐藏
大二时候的代码以及笔记,当时暂时记录在QQ上在,现在发出来分享一下. 为了写驱动装一大堆的软件插件啥的,还常常失败. 这里就顺带总结下SDK下载和WinDbg symbol路径设置正确WinDbg却总 ...
- 第三节 java 数组
一维数组: 同一种类型数据的集合,其实数组就是一个容器. 好处: 可以自动给数组中的元素从0开始编号,方便操作这些元素. 格式1: 元素类型[] 数组名 = new 元素类型 [元素个数或者元素长度 ...