常见DML语句汇总
DML操作是指对数据中表记录的操作,主要包括表记录的插入(insert)、更新(update)、删除(delete)和查询(select),是开发人员日常使用最频繁的操作,下面依次对它们进行介绍。
(1) 插入记录
INSERT INTO tablename(field1,field2,…,fieldn) VALUES(value1,vaule2,…,valuen)
(2) 更新记录
UPDATE tablename SET field1=value1,field2=value2,…,fieldn=valuen [WHERE CONDITION]
(3) 同时更新多个表数据
UPDATE t1,t2,…tn SET t1.field=value1,t2.fieldn=valuen [WHERE CONITION]
(4) 删除记录
DELETE FROM tablename [WHERE CONDITION]
(5) 删除多个表的数据
DELETE FROM t1,t2,…,tn FROM t1,t2,…,tn[WHERE CONDITION]
(6) 查询记录
SELECT * FROM tablename [WHERE CONDITION]
(7) 排序
SELECT * FROM tablename [WHERE CONDITION] [ORDER BY field1 [DESC|ASC] , field2 [DESC|ASC] ,…, fieldn [DESC|ASC]]
(8) 聚合
SELECT [field1,field2,…,fieldn] fun_name FROM tablename
[WHERE CONDITION] [GROUP BY field1,field2,…,fieldn] [WITH ROLLUP]
[HAVING CONDITION]
- fun_name表示要做的聚合操作、也就是聚合函数、常用的又sum(求和)、count(*)(记录数)、max(最大值)、min(最小值)
- WITH ROLLUP 是可选语法、表明是否对分类聚合后的结果进行再汇总
- HAVING关键字表示对分类后的结果在进行条件的过滤
注意:having和where的区别在于,having是对聚合后的结果进行条件的过滤,而where是在聚合前就对记录进行过滤,若果逻辑允许,我们尽可能用where先过滤记录,这样因为结果集减少,将对聚合的效率大大提高,最后再根据逻辑看是否用having进行过滤。
(9) 内连接(包含左右表中互相匹配的记录)
SELECT * FROM tb1 INNER JOIN tb2 WHERE CONDITION
(10) 左连接(包含所有的左表中的记录甚至是右边表中没有和它匹配的记录)
SELECT * FROM tb1 LEFT JOIN tb2 WHERE CONDITION
(11) 右连接(包含所有的左表中的记录甚至是右边表中没有和它匹配的记录)
SELECT * FROM tb1 LEFT JOIN tb2 WHERE CONDITION
(12) 子查询
SELECT * FROM tb1 WHERE filed1 IN (SELECT field1 FROM tb2)
注意:表连接在很多情况夏用于优化子查询
(13) 记录联合
SELECT * FROM tb1 UNION|UNION ALL SELECT * FROM tb2
注意:使用UNION和UNION
ALL将多个表中的数据按照一定的查询条件查询出来和,将结果合并到一起显示出来。UNION和UNION ALL的主要区别是UNION
ALL是把结果集直接合并在一起,而UNION是将UNION ALL后的结果进行一次DISTINCT,去除重复的记录。
常见DML语句汇总的更多相关文章
- SQL基础-----DML语句
之前已经介绍过SQL基础之DDL(数据库定义语言)语句,http://www.cnblogs.com/cxq0017/p/6433938.html(这是地址) 这篇文章主要介绍DML语句(数据库操纵语 ...
- 数据库之sql语句汇总20180616
/*******************************************************************************************/ 一.SQL简 ...
- 详解MySQL第二篇—DML语句
DML 语句: DML 操作是指对数据库中表记录的操作,主要包括表记录的插入(insert).更新(update).删除(delete)和查(select),是开发人员日常使用最频繁的操作.下面将依次 ...
- 入门MySQL——DML语句篇
前言: 在上篇文章中,主要为大家介绍的是DDL语句的用法,可能细心的同学已经发现了.本篇文章将主要聚焦于DML语句,为大家讲解表数据相关操作. 这里说明下DDL与DML语句的分类,可能有的同学还不太 ...
- MySQL基础之DML语句
DML 语句 DML(Data Manipulation Language)语句:数据操纵语句. 用途:用于添加.修改.删除和查询数据库记录,并检查数据完整性. 常用关键字:insert.update ...
- 解决死锁之路3 - 常见 SQL 语句的加锁分析 (转)
出处:https://www.aneasystone.com/archives/2017/12/solving-dead-locks-three.html 这篇博客将对一些常见的 SQL 语句进行加锁 ...
- jdbc java数据库连接 3)Statement接口之执行DDL和DML语句的简化
上一章的代码中,可以发现,jdbc执行DDL和DML有几个步骤都是一样的: 1)执行语句开始时,创建驱动注册对象.获取连接的数据库对象.创建Statement对象 // 创建驱动注册对象 Class. ...
- 详解MySQL---DDL语句、DML语句与DCL语句
背景:近几年,开源数据库逐渐流行起来.由于具有免费使用.配置简单.稳定性好.性能优良等优点,开源数据库在中低端应用上占据了很大的市场份额,而 MySQL 正是开源数据库中的杰出代表.MySQL 数据库 ...
- 数据库 使用DML语句更改数据
使用DML语句更改数据 添加新数据: 插入单行语句: Insert into 表名(列名)values(‘值’); 插入多行:insert into 表名(列名,…..) Values(‘值’,’值’ ...
随机推荐
- Android中图片优化
1.对图片进行压缩:建议使用TinyPNG工具压缩 2.WebP格式(支持4.0以上)可减少文件大小 3.尽量使用NinePatch的PNG 4.图片缓存
- easyUI之表单
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <hea ...
- 部署Hadoop-3.0-高性能集群
一.Hadoop概述: Hadoop是一个由Apache基金会所开发的分布式系统基础架构.用户可以在不了解分布式底层细节的情况下,开发分布式程序.充分利用集群的威力进行高速运算和存储.Hadoop的框 ...
- 手把手教你如何玩转Solr(包含项目实战)
一:Solr简介 Solr是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service的API接口.用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引 ...
- docker-搭建efk收集docker日志
新建docker-compose.yml文件 version: '2' services: fluentd: build: ./fluentd volumes: - ./fluentd/conf:/f ...
- 修改主机名(/etc/hostname和/etc/hosts区别)
ubuntu永久修改主机名 1.查看主机名 在Ubuntu系统中,快速查看主机名有多种方法:其一,打开一个GNOME终端窗口,在命令提示符中可以看到主机名,主机名通常位于“@”符号后:其二,在终端窗口 ...
- 转:使用ActiveX插件时object显示问题,div被object标签遮挡的解决方案
起因设计要求视频控制面板显示在视频界面上,如下图红框内所示.但是因为object不在文档流之中,所以不论别的元素设置z-index多高,都只会被object元素遮住而无法看到.object元素代码如下 ...
- Postman的安装和升级
安装postman Postman本地应用程序 Postman可以作为Mac,Windows和Linux操作系统的本地应用程序. 要安装Postman,请转到应用界面,并根据你的平台点击Mac/Win ...
- python-爬虫-scrapy
入门: 下载:pip install scrapy 工程:scrapy startproject 工程名 Spider: scrapy genspider 爬虫名 url (--nolog//可选不 ...
- Git提交本地项目文件到GitHub的详细操作
因最近在使用git命令提交代码到github的操作,网上找了下教程,记录下过程,便于查看 添加整个文件夹及内容 git add 文件夹/ 添加目录中所有某种类型的文件 git add *.文件类型 `