SQL 基础知识终极指南
什么是数据库?
数据库是以电子方式从系统中存储和检索的大量数据集合。 存储在数据库中的结构化数据被处理、操纵、控制和更新以执行各种操作。 行业中使用的一些流行数据库是 Oracle、MySQL、PostgreSQL、MS SQL Server 和 SQLite。
什么是SQL?
SQL 是一种标准的编程语言,用于操作关系数据库并执行各种操作,例如从关系数据库中插入、操作、更新和检索数据。
为什么需要 SQL?
以下任务需要 SQL
- 创建新的数据库、表和视图
- 在数据库中插入记录
- 更新数据库中的记录
- 从数据库中删除记录
- 从数据库中检索数据
SQL的应用
- SQL用于创建数据库,定义其结构,实现它,并在数据库上执行各种功能。
- SQL 还用于访问、维护和操作已创建的数据库。
- SQL 是一种构建良好的语言,用于在数据库中输入数据、修改数据和提取数据。
- SQL 被大量用作客户端/服务器语言来连接前端和后端,从而支持客户端/服务器架构。
- SQL 部署为数据控制语言 (DCL) 时,有助于保护您的数据库免受未经授权的访问。
SQL的特点
- SQL 用于访问关系数据库中的数据。
- SQL 在非常有效地提取大量数据方面非常快。
- SQL 非常灵活,因为它可以与来自 Oracle、IBM、Microsoft 等的多个数据库系统配合使用。
- SQL 可帮助您管理数据库,而无需了解大量编码。
SQL 中的基本查询
在本节中,我们将在 MySQL Workbench 上运行一些常用的命令。
SHOW Statment
列出了 MySQL Workbench 服务器主机上存在的数据库。
语法
show databases;

use Statment
USE 语句选择一个数据库并在该数据库上执行 SQL 操作。该数据库保持默认状态,直到会话结束或与某个其他数据库执行另一个 USE 语句。
语法
USE database_name;

CREATE TABLE Statement
CREATE TABLE 语句在 SQL 中用于创建新表。
语法
CREATE TABLE table_name (
column1 datatype,
column2 datatype,
column3 datatype,
....
);
以下 SQL 查询将创建一个具有以下属性的客户表:客户 ID、客户姓名、年龄、性别、购买日期、地址、项目和价格。
CREATE TABLE customers (
Cust_Id INT PRIMARY KEY,
Cust_Name VARCHAR(25),
Age INT,
Gender CHAR(1),
Dop DATE,
Address VARCHAR(20),
Item VARCHAR(15),
Price FLOAT
);

INSERT INTO Statement
INSERT INTO 语句主要用于在表中添加新数据。
语法
INSERT INTO table_name (column1, column2, column3, ...)
VALUES (value1, value2, value3, ...);
以下 SQL 查询将数据插入到客户表中的记录中。
insert into customers values
(101, "Joseph", 22, "M", "2016-11-23", "Pune", "Vegetable", 80),
(102, "Nilesh", 21, "M", "2016-11-23", "New York", "softdrink", 800),
(103, "Vipul", 33, "M", "2016-11-23", "Miami", "candies", 620),
(104, "Anubhav", 61, "M", "2016-11-23", "Pune", "fruits", 250),
(105, "Utkarsh", 45, "M", "2016-11-23", "New York", "snacks", 380),
(106, "Ishan", 44, "M", "2016-11-23", "Miami", "potato", 60),
(107, "Ankit", 52, "M", "2016-11-23", "Chicago", "ice cream", 220),
(108, "Akshay", 36, "M", "2016-11-23", "Pune", "coffee", 80),
(109, "Akash", 28, "M", "2016-11-23", "New York", "Vegetable", 150),
(110, "Tanishq", 19, "M", "2016-11-23", "Miami", "noodles", 400),
(111, "Raghav", 24, "M", "2016-11-23", "Detroit", "cups", 3400),
(112, "Anand", 54, "M", "2016-11-23", "Pune", "watermelon", 680),
(113, "Amrit", 43, "M", "2016-11-23", "Miami", "facewash", 340),
(114, "Andrew", 18, "M", "2016-11-23", "Boston", "shampoo", 950),
(115, "Ricky", 26, "M", "2016-11-23", "Detroit", "vanilla", 290),
(116, "Cummins", 30, "M", "2016-11-23", "Chicago", "mango", 640),
(117, "Rabada", 40, "M", "2016-11-23", "Boston", "banana", 80),
(118, "Johnson", 55, "M", "2016-11-23", "New York", "batteries", 420),
(119, "Adam", 45, "M", "2016-11-23", "Boston", "router", 160),
(120, "Illeana", 25, "F", "2016-11-23", "Chicago", "brinjal", 550);

SELECT Statement
最常用的 SQL 命令是 SELECT 语句。 SQL SELECT 语句用于从数据库的表中选择行和列。
语法
SELECT column1, column2, ...
以下 SQL 查询将返回客户表的所有记录。
Select * from customers;

以下 SQL 查询将返回 customer 表中所有记录的列 customer id 和 customer name。
select Cust_id,Cust_Name from customers;

DROP TABLE Statement
DROP 语句主要用于删除特定表。 删除表将删除其中的所有对象(表、视图、过程等)。 用户应该具有删除表的管理员权限。
语法
DROP TABLE table_name;
以下 SQL 查询将从数据库中删除或删除客户表。
Drop table customers;

TRUNCATE TABLE Statement
TRUNCATE TABLE 命令删除表内的数据,但不删除表本身。
语法
TRUNCATE TABLE Categories;

UPDATE Statement
UPDATE 语句主要用于更新表中的现有记录。
语法
UPDATE table_name SET column1 = value1, column2 = value2, ... WHERE condition;
以下 SQL 查询会将客户 id = 101 的记录中的客户名称更新为 James,并将城市名称更新为 Boston。
update customers set Cust_Name = "James", Address= "Boston" where Cust_Id = 101;

总结
SQL 被开发用于访问关系数据库中的数据。 自从公司意识到需要处理数据以来,SQL 开发人员的需求就很大。 在本教程中,我们已经介绍了 SQL 的基础知识。
要学习更详细的 SQL ,请查看 SQL教程。
SQL 基础知识终极指南的更多相关文章
- [SQL] SQL 基础知识梳理(一)- 数据库与 SQL
SQL 基础知识梳理(一)- 数据库与 SQL [博主]反骨仔 [原文地址]http://www.cnblogs.com/liqingwen/p/5902856.html 目录 What's 数据库 ...
- [SQL] SQL 基础知识梳理(二) - 查询基础
SQL 基础知识梳理(二) - 查询基础 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5904824.html 序 这是<SQL 基础知识梳理( ...
- [SQL] SQL 基础知识梳理(三) - 聚合和排序
SQL 基础知识梳理(三) - 聚合和排序 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5926689.html 序 这是<SQL 基础知识梳理 ...
- [SQL] SQL 基础知识梳理(四) - 数据更新
SQL 基础知识梳理(四) - 数据更新 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5929786.html 序 这是<SQL 基础知识梳理( ...
- [SQL] SQL 基础知识梳理(五) - 复杂查询
SQL 基础知识梳理(五) - 复杂查询 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5939796.html 序 这是<SQL 基础知识梳理( ...
- [SQL] SQL 基础知识梳理(六)- 函数、谓词、CASE 表达式
SQL 基础知识梳理(六)- 函数.谓词.CASE 表达式 目录 函数 谓词 CASE 表达式 一.函数 1.函数:输入某一值得到相应输出结果的功能,输入值称为“参数”,输出值称为“返回值”. 2. ...
- [SQL] SQL 基础知识梳理(七)- 集合运算
SQL 基础知识梳理(七)- 集合运算 目录 表的加减法 联结(以列为单位) 一.表的加减法 1.集合:记录的集合(表.视图和查询的执行结果). 2.UNION(并集):表的加法 -- DDL:创建表 ...
- 如何编写更好的SQL查询:终极指南-第二部分
上一篇文章中,我们学习了 SQL 查询是如何执行的以及在编写 SQL 查询语句时需要注意的地方. 下面,我进一步学习查询方法以及查询优化. 基于集合和程序的方法进行查询 反向模型中隐含的事实是,建立查 ...
- 如何编写更好的SQL查询:终极指南-第三部分
本次我们学习<如何编写更好的SQL查询>系列的最后一篇文章. 时间复杂度和大O符号 通过前两篇文章,我们已经对查询计划有了一定了解.接下来,我们还可以借助计算复杂度理论,来进一步深入地挖掘 ...
随机推荐
- Effective C++ 总结笔记(六)
七.模板与泛型编程 41.了解隐式接口和编译器多态 1.类和模板都支持接口和多态. 2.类的接口是显式定义的--函数签名.多态是通过虚函数在运行期体现的. 3.模板的接口是隐式的(由模板函数的实现代码 ...
- [cf741C]Arpa’s overnight party and Mehrdad’s silent entering
直接令2i-1和2i的位置不相同,相当于有2n条边,对其进行二分图染色即可(这张图一定不存在奇环). 假设给出的n条关系是A类边,2i-1和2i的边是B类边,可以发现一条路径一定是AB交替(因为A/B ...
- [bzoj1071]组队
题目即要求$Ah+Bv<=C+Aminh+Bminv$,如果同时枚举minh和minv,那么即要求$minh\le h$,$minv\le v$且$s\le C+Aminh+Bminv$从小到大 ...
- Redis | 第一部分:数据结构与对象 中篇《Redis设计与实现》
目录 前言 1. 跳跃表 1.1 跳跃表与其节点的定义 1.2 跳跃表的API 2. 整数集合 2.1 整数集合的实现 2.2 整数集合的类型升级 2.3 整数集合的API 3. 压缩列表 3.1 压 ...
- 二、JAVA API实现HDFS
目录 前文 hdfsdemo通过HDFS上传下载文件 windows环境下需要使用uitls.exe 为pom.xml增加依赖 新建java文件HDFS_CRUD GitHub下载地址 前文 一.Ce ...
- 【IDEA】头注释和方法注释
头注释和方法注释 2020-09-08 10:16:17 by冲冲 1.头注释 ①设置 ②模板内容 /** * @ClassName ${NAME} * @Description ${DESCRI ...
- idea内存配置
找到IDEA安装的bin目录 打开idea.exe.vmoptions 文件 如果嫌麻烦还打开了idea 那么就可以点击这个.. 关键的三个参数的说明 1. -Xms 是最小启动内存参数 2. -X ...
- 单&双&单|双||的区别
System.out.println(true|true);//true System.out.println(true|false);//true System.out.println(false| ...
- Python的数据解析
- 洛谷 P3285 - [SCOI2014]方伯伯的OJ(平衡树)
洛谷题面传送门 在酒店写的,刚了一整晚终于调出来了-- 首先考虑当 \(n\) 比较小(\(10^5\) 级别)的时候怎么解决,我们考虑将所有用户按排名为关键字建立二叉排序树,我们同时再用一个 map ...