什么是数据库?

数据库是以电子方式从系统中存储和检索的大量数据集合。 存储在数据库中的结构化数据被处理、操纵、控制和更新以执行各种操作。 行业中使用的一些流行数据库是 Oracle、MySQLPostgreSQL、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 基础知识终极指南的更多相关文章

  1. [SQL] SQL 基础知识梳理(一)- 数据库与 SQL

    SQL 基础知识梳理(一)- 数据库与 SQL [博主]反骨仔 [原文地址]http://www.cnblogs.com/liqingwen/p/5902856.html 目录 What's 数据库 ...

  2. [SQL] SQL 基础知识梳理(二) - 查询基础

    SQL 基础知识梳理(二) - 查询基础 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5904824.html 序 这是<SQL 基础知识梳理( ...

  3. [SQL] SQL 基础知识梳理(三) - 聚合和排序

    SQL 基础知识梳理(三) - 聚合和排序 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5926689.html 序 这是<SQL 基础知识梳理 ...

  4. [SQL] SQL 基础知识梳理(四) - 数据更新

    SQL 基础知识梳理(四) - 数据更新 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5929786.html 序 这是<SQL 基础知识梳理( ...

  5. [SQL] SQL 基础知识梳理(五) - 复杂查询

    SQL 基础知识梳理(五) - 复杂查询 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5939796.html 序 这是<SQL 基础知识梳理( ...

  6. [SQL] SQL 基础知识梳理(六)- 函数、谓词、CASE 表达式

    SQL 基础知识梳理(六)-  函数.谓词.CASE 表达式 目录 函数 谓词 CASE 表达式 一.函数 1.函数:输入某一值得到相应输出结果的功能,输入值称为“参数”,输出值称为“返回值”. 2. ...

  7. [SQL] SQL 基础知识梳理(七)- 集合运算

    SQL 基础知识梳理(七)- 集合运算 目录 表的加减法 联结(以列为单位) 一.表的加减法 1.集合:记录的集合(表.视图和查询的执行结果). 2.UNION(并集):表的加法 -- DDL:创建表 ...

  8. 如何编写更好的SQL查询:终极指南-第二部分

    上一篇文章中,我们学习了 SQL 查询是如何执行的以及在编写 SQL 查询语句时需要注意的地方. 下面,我进一步学习查询方法以及查询优化. 基于集合和程序的方法进行查询 反向模型中隐含的事实是,建立查 ...

  9. 如何编写更好的SQL查询:终极指南-第三部分

    本次我们学习<如何编写更好的SQL查询>系列的最后一篇文章. 时间复杂度和大O符号 通过前两篇文章,我们已经对查询计划有了一定了解.接下来,我们还可以借助计算复杂度理论,来进一步深入地挖掘 ...

随机推荐

  1. [hdu7081]Pty loves book

    建立ac自动机,令$S_{x}$为以根到$x$的路径所构成的字符串以及$L_{x}=|S_{x}|,W_{x}=\sum_{1\le i\le m,t_{i}为S_{x}的后缀}w_{i}$,那么不难 ...

  2. [luogu7600]封闭道路

    对于确定的$K$,问题也可以看作每一个点最多选$K$条出边,并最大化选择的边权和 关于这个问题,有如下的树形dp-- 令$f_{k,0/1}$表示以$k$为根的子树中,根节点选择不超过$K/K-1$个 ...

  3. Redis | 第一部分:数据结构与对象 中篇《Redis设计与实现》

    目录 前言 1. 跳跃表 1.1 跳跃表与其节点的定义 1.2 跳跃表的API 2. 整数集合 2.1 整数集合的实现 2.2 整数集合的类型升级 2.3 整数集合的API 3. 压缩列表 3.1 压 ...

  4. C/C++ Qt Dialog 对话框组件应用

    在Qt中对话框分为两种形式,一种是标准对话框,另一种则是自定义对话框,在一般开发过程中标准对话框使用是最多的了,标准对话框一般包括 QMessageBox,QInputDialog,QFileDial ...

  5. jvm的垃圾回收

    首先类加载的过程:加载验证准备解析初始化 类加载器: jvm内存模型图: 空着,等以后补上 jvm垃圾收集器 目前只知道,parnew,cms,g1 parnew新生代垃圾回收器,复制算法 cms复制 ...

  6. 洛谷 P6349 - [PA2011]Kangaroos(KDT+标记下放)

    洛谷题面传送门 KDT 上打标记的 hot tea. 考虑将询问 \(A,B\) 看作二维平面直角坐标系上的一个点 \((A,B)\),那么我们这样考虑,我们从左到右扫过全部 \(n\) 个区间并开一 ...

  7. Codeforces 870F - Path(数论+分类讨论+正难则反)

    Codeforces 题目传送门 & 洛谷题目传送门 首先考虑 \(d(u,v)\) 是个什么东西,分情况讨论: \(u\not\perp v\),\(d(u,v)=1\) \(u\perp ...

  8. P4569 [BJWC2011]禁忌

    题目传送门. 题意简述:给出大小为 \(n\) 的字典 \(s\).设函数 \(g(t)\) 表示 \(t\) 最多能被分割成的单词个数.等概率随机生成长度为 \(len\) 的字符串 \(T\),求 ...

  9. PowerDotNet平台化软件架构设计与实现系列(05):ETCD分布式键值存储平台

    ETCD目前在PowerDotNet已经被用于注册中心和配置管理(常见的配置中心在PowerDotNet中仅仅是一个小小的模块而已)中,作为基础设施的重要组成部分,ETCD的重要性不言而喻. 本文简单 ...

  10. 数据仓库和数据集市:ODS、DW、DWD、DWM、DWS、ADS

    @ 目录 数据流向 何为数仓DW 主要特点 与数据库的对比 为何要分层 数据分层 数据运营层ODS 数据仓库层 数据细节层DWD 数据中间层DWM 数据服务层DWS(DWT) 数据应用层ADS 事实表 ...