SQL 命令一般分为 DQL、DML、DDL

DQL:数据查询语句,基本就是 SELECT 查询命令,用于数据查询

DML:Data Manipulation Language 的简称,即数据操纵语言,主要用于插入、更新、删除数据,所以也分为 INSERT、UPDATE、DELETE 三种语句。

DDL:Data Definition Language 的缩写,即数据定义语言,主要用于创建、删除,以及修改表、索引等数据库对象语言

⚠️

1. 显示列的类型 "character varying(40)" 实际上与 "varchar(40)" 的意思是完全一样的, "int" 与 "integer" 的意思也是一样的。

2. 建表的时候,指定主键后,系统会为主键自动创建一个隐含的索引。

3. varchar(n) 和 char(n) 分别是 character varying(n) 和 character(n) 的别名,没有声明长度的 character 等于 character(1) 。如果使用 character varying 时不带长度说明词,那么该类型接受任何长度的字符串。不带长度是 PostgreSQL 的扩展,其他数据库一般不能这样使用。大多数情况下,应该使用 text 或 varchar。

表 join 

表 join 也称为多表关联查询,如:

SELECT student_name, class_name FROM student a, class b

WHERE a.class_no = b.no;

INSERT INTO...SELECT 语句

使用 INSERT INTO...SELECT  语句可以把数据从一张表插入到另一张表中,这个语句属于 DML 语句。

可以使用下面的语句把数据备份到下面这张备份表中:

INSERT INTO student_bak SELECT * FROM student;

UNION 语句

可以将两张表的数据整合在一个结果集中,如

SELECT * FROM student WHERE no = 1

UNION

SELECT * FROM student_bak WHERE no = 2;

注意,UNION 可以把结果集中相同的两条记录合并成一条,如果不想合并,可以使用 UNION ALL

TRUNCATE TABLE 语句

效果和不带 WHERE 条件子句的 DELETE 语句也表示清空表的内容一样,但是两者实现的原理是不一样的。

TRUNCATE TABLE 是 DDL 语句,相当于重新定义一个新表的方法,把原先的表的内容直接丢弃了,所以执行起来很快,而 DELETE 是 DML 语句,可以认为 DELETE 是把数据一条一条地删除,若要删除很多行数据,就会比较慢。

SQL 基础语法详解的更多相关文章

  1. Hive笔记--sql语法详解及JavaAPI

    Hive SQL 语法详解:http://blog.csdn.net/hguisu/article/details/7256833Hive SQL 学习笔记(常用):http://blog.sina. ...

  2. Hadoop Hive sql语法详解

    Hadoop Hive sql语法详解 Hive 是基于Hadoop 构建的一套数据仓库分析系统,它提供了丰富的SQL查询方式来分析存储在Hadoop 分布式文件系统中的数据,可以将结构 化的数据文件 ...

  3. mysql中SQL执行过程详解与用于预处理语句的SQL语法

    mysql中SQL执行过程详解 客户端发送一条查询给服务器: 服务器先检查查询缓存,如果命中了缓存,则立刻返回存储在缓存中的结果.否则进入下一阶段. 服务器段进行SQL解析.预处理,在优化器生成对应的 ...

  4. mysql用户授权、数据库权限管理、sql语法详解

    mysql用户授权.数据库权限管理.sql语法详解 —— NiceCui 某个数据库所有的权限 ALL 后面+ PRIVILEGES SQL 某个数据库 特定的权限SQL mysql 授权语法 SQL ...

  5. 为什么说JAVA中要慎重使用继承 C# 语言历史版本特性(C# 1.0到C# 8.0汇总) SQL Server事务 事务日志 SQL Server 锁详解 软件架构之 23种设计模式 Oracle与Sqlserver:Order by NULL值介绍 asp.net MVC漏油配置总结

    为什么说JAVA中要慎重使用继承   这篇文章的主题并非鼓励不使用继承,而是仅从使用继承带来的问题出发,讨论继承机制不太好的地方,从而在使用时慎重选择,避开可能遇到的坑. JAVA中使用到继承就会有两 ...

  6. Java程序员从笨鸟到菜鸟之(一百)sql注入攻击详解(一)sql注入原理详解

    前段时间,在很多博客和微博中暴漏出了12306铁道部网站的一些漏洞,作为这么大的一个项目,要说有漏洞也不是没可能,但其漏洞确是一些菜鸟级程序员才会犯的错误.其实sql注入漏洞就是一个.作为一个菜鸟小程 ...

  7. Velocity魔法堂系列二:VTL语法详解

    一.前言 Velocity作为历史悠久的模板引擎不单单可以替代JSP作为Java Web的服务端网页模板引擎,而且可以作为普通文本的模板引擎来增强服务端程序文本处理能力.而且Velocity被移植到不 ...

  8. SQL DELETE 语句详解

    SQL DELETE 语句详解   DELETE 语句 DELETE 语句用于删除表中的行. 语法 DELETE FROM 表名称 WHERE 列名称 = 值 Person: LastName Fir ...

  9. SQL Update 语句详解

    SQL Update 语句详解   Update 语句 Update 语句用于修改表中的数据. 语法: UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值 Person: L ...

随机推荐

  1. 美国L-1A签证简介

    一. L-1A签证是美国非移民签证种类之一,主要发给外国跨国公司在美所设公司的高层管理人员.申请程序是先经美国移民局批准,美驻外使领馆凭移民局的批准函(I-797表)核发签证.移民局的批准函并不意味着 ...

  2. COGS 1191. [Tyvj Feb11] 猫咪的进化

    ★   输入文件:neko.in   输出文件:neko.out   简单对比时间限制:1 s   内存限制:128 MB [背景] 对于一只猫咪来说,它是有九条命的.但是并不是所有的猫咪都是这样,只 ...

  3. 如何在Java代码中使用SAP云平台CloudFoundry环境的环境变量

    本文使用的例子源代码在我的github上. 在我的公众号文章在SAP云平台的CloudFoundry环境下消费ABAP On-Premise OData服务介绍了如何通过Cloud Connector ...

  4. jQuery中常用的元素查找方法总结

    $("#myELement") 选择id值等于myElement的元素,id值不能重复在文档中只能有一个id值是myElement所以得到的是唯一的元素 $("div&q ...

  5. IOS类似9.png

    图形用户界面中的图形有两种实现方式,一种是用代码画出来,比如Quartz 2D技术,狠一点有OpenGL ES,另一种则是使用图片. 代码画的方式比较耗费程序员脑力,CPU或GPU; 图片则耗费磁盘空 ...

  6. tmux 用z关闭之后的恢复

    ctrl+b 然后z是全屏 但是如果是ctrl+z就是关闭窗口了 tmux ls看所有窗口 然后 tmux attach -t 2或者3就恢复

  7. python_8_guess

    #python3和2都可以 #方法1 age_of_oldboy=56 count=0 while True: if count==3: break guess_age=int(input('gues ...

  8. Debug与Release版本的区别详解

    原文链接 Debug 和 Release 并没有本质的区别,他们只是VC预定义提供的两组编译选项的集合,编译器只是按照预定的选项行动.如果我们愿意,我们完全可以把Debug和Release的行为完全颠 ...

  9. SummerVocation_Learning--java的自动打包与解包

    Auto Boxing: 自动将基础类型转换成对象(JDK1.5之后支持) Auto UnBoxing:自动将对象转换成基础类型 如 Map中的put方法,如果要传入键值对<a,1>,&l ...

  10. scrapy使用流程

    安装:通过pip install scrapy即可安装 在ubuntu上安装scrapy之前,需要先安装以下依赖:sudo apt-get install python3-dev build-esse ...