MySQL-快速入门(6)连接查询、子查询、正则表达式查询、数据的插入删除更新
1、内连接查询:inner join ... on
只有满足条件的记录才能够出现在结果关系中,即完全相等。自连接查询是一种特殊的内连接查询。
2、外连接查询:
1》左外连接 / 左连接:返回包括左表中的所有记录和右表中连接字段相等的记录。
2》右外连接 / 右连接:返回包括右表中的所有记录和左表中连接字段相等的记录。
3》全外连接:返回两个表中所有的数据记录。
3、子查询
子查询常用的操作符有:any(some)、all、in、exists。
1》any(some):
select * from t1 where t1.id > any (select id from t2 where t2.name=...)
2》all:同上,可以与比较符一起使用。
3》exists / not exists:
4》in / not in:
5》带比较运算符的子查询:<、<=、=、>=、!=(或<>)
6》union / union all:合并查询结果
4、正则表达式查询
MySQL使用regexp关键字指定正则表达式的字符匹配模式,默认不区分大小写。
匹配指定字符串:只要这个字符串在查询文本中即可。如果要匹配多个字符串,多个字符串之间使用分隔符‘|’隔开。
select * from test where name regexp 'or|ap';
匹配指定字符串中的任意一个:方括号“[]”指定一个字符集合,只匹配其中任何一个字符,即为所查找的文本。
select * from test where name regexp '[orap]';
select * from test where name regexp '[0-9]|[a-z]'; //[]中也可以是范围
匹配指定字符以外的字符:
select * from test where name regexp '[^a-z0-9]';
使用{n,}或者{n,m}来指定字符串连续出现的次数:
{n,}:表示至少匹配n次前面的字符
{n,m}:表示匹配前面的字符不少于n次,不多于m次。
select * from test where name regexp 'x{2,}';
或者
select * from test where name regexp 'x{2,4}';
5、数据的插入、更新、删除
1》插入数据:
insert into tb_name(column_list) values (value_list);
或者
insert into tb_name(column_list) values (value_list),(value_list),...;
或者
insert into tb_name values (value_list),(value_list),...;
或者
insert into tb_name(column_list) select (column_list) from tb_name2 where ...;
2》更新数据:
update tb_name
set column_name = value,...
where ...;
3》删除数据:
delete from tb_name [where ...];
truncate table tb_name; //将直接删除原来的表,并重新创建一个表
MySQL-快速入门(6)连接查询、子查询、正则表达式查询、数据的插入删除更新的更多相关文章
- MySql基础笔记(一)Mysql快速入门
Mysql快速入门 一)基本概念 1)表 行被称为记录,是组织数据的单位.列被称为字段,每一列表示记录的一个属性. 2)主键 主键用于唯一的标识表中的每一条记录.可以定义表中的一列或者多列为主键, 但 ...
- MySQL 快速入门教程
转:MySQL快速 入门教程 目录 一.MySQL的相关概念介绍 二.Windows下MySQL的配置 配置步骤 MySQL服务的启动.停止与卸载 三.MySQL脚本的基本组成 四.MySQL中的数据 ...
- mysql根据查询结果批量更新多条数据(插入或更新)
mysql根据查询结果批量更新多条数据(插入或更新) 1.1 前言 mysql根据查询结果执行批量更新或插入时经常会遇到1093的错误问题.基本上批量插入或新增都会涉及到子查询,mysql是建议不要对 ...
- MySQL快速入门(二)
目录 MySQL快速入门(二) 约束条件 自增 自增的特性 主键 外键 级联更新/删除 表与表之间的关系 外键约束 操作表方法 查询关键字 练习数据 select··from where 筛选 gro ...
- MySQL 快速入门(一)
目录 MySQL快速入门 简介 存储数据的演变过程 数据库分类 概念介绍 MySQL安装 MySQL命令初始 环境变量配置 MySQL环境变量配置 修改配置文件 设置新密码 忘记密码的情况 基本sql ...
- python对MySQL进行数据的插入、更新和删除之后需要commit,数据库才会真的有数据操作。(待日后更新)
今天在尝试用下面的python代码对MySQL进行数据的插入.更新和删除时, 突然发现代码执行成功, 通过代码查询也显示数据已经插入或更新, 但是当我在MySQL客户端通过SQL语句查询时, 数据库中 ...
- Mysql快速入门(看完这篇能够满足80%的日常开发)
这是一篇mysql的学习笔记,整理结合了网上搜索的教程以及自己看的视频教程,看完这篇能够满足80%的日常开发了. 菜鸟教程:https://www.runoob.com/mysql/mysql-tut ...
- Mysql快速入门(三)
MySQL性能优化之查看执行计划explain 介绍: (1).MySQL 提供了一个 EXPLAIN 命令, 它可以对 SELECT 语句进行分析, 并输出 SELECT 执行的详细信息, 以供开发 ...
- MySQL快速入门及常用命令
数据库 笔记内容 SQL语言共分为四大类:数据查询语言DQL,数据操纵语言DML,数据定义语言DDL,数据控制语言DCL. 1. 数据查询语言DQL 数据查询语言DQL基本结构是由SELECT子句,F ...
随机推荐
- 《Head First 软件开发》阅读二
项目计划:为成功而筹划 每段伟大的代码始于伟大的计划. 客户现在就要他们的软件,可是开发需要的时间远远超过客户要求时间.我们需要实际解决方法:由客户确定优先级,与客户一起确定优先级顺序,开发出Mile ...
- JAVA笔记19-容器之三 Set接口、List接口、Collections类、Comparable接口(重要)
一.Set接口 //HashSet综合举例 import java.util.*; public class Test{ public static void main(String[] args){ ...
- kong CentOS7网关安装
1.先安装postgres数据库,yum安装.yum install postgresql96yum install postgresql96-server配置环境变量export PGDATA=/v ...
- CSS设置背景色
最好用background-color:rgba(37,77,113,1); 因为用opacity会让所有自标签都改变
- ELK+Filebeat+redis整合
前面的博客,有具体的ELK安装配置步骤,此处在其基础上修改 修改配置文件并启动 [root@topcheer filebeat-6.2.3-linux-x86_64]# vim filebeat.ym ...
- windows 安装 Mongodb 数据库及操作图形化软件 Robo 3T
1 下载系统对应的正确 Mongodb 和 Robo 3T 版本 2 选中 Mongodb 需要安装的路径(后续会使用路径) 3 启动 Mongodb 服务器(到安装相关的路径) 可以参考 菜鸟教程 ...
- SWPUCTF2019 | Network
这题真的就靠百度的,第一次接触TTL型的misc,直接拿了一个大佬的脚本,改了一丢丢: with open('t.txt') as f: lines = f.readlines() n_num = [ ...
- REST framework 之 分页
DRF分页组件 为什么要使用分页 我们数据表中可能会有成千上万条数据,当我们访问某张表的所有数据时,我们不太可能需要一次把所有的数据都展示出来,因为数据量很大,对服务端的内存压力比较大还有就是网络传输 ...
- Spring容器的基本使用
1)如何将一个Bean组件交给Spring容器 方法:在applicationContext.xml中添加以下定义 <bean id = “标识符” class = “Bean组件类型”> ...
- 系统性能信息模块--psutil
#安装psutil模块#pip install psutil -i https://pypi.doubanio.com/simple #导入psutil模块import psutilimport da ...