一文读懂SQL的增删改查(基础教程)
作者:mmseoamin日期:2023-12-19

         前言

一、一些最重要的 SQL 命令

二、查询(SELECT)

1、查询所有列

2、查询指定列

3、查询并去重(DISTINCT )

4、按条件查询where

 5、SQL AND & OR 运算符

6、SQL ORDER BY 关键字

7、SQL LIMIT 关键字

8、SQL LIKE 操作

9、SQL IN 操作符

9、SQL BETWEEN 操作符

三、插入(INSERT INTO)

四、更新(UPDATE)

五、删除(DELETE)

总结


前言

            SQL (Structured Query Language:结构化查询语言) 是用于管理关系数据库管理系统(RDBMS)。 SQL 的范围包括数据插入、查询、更新和删除,数据库模式创建和修改,以及数据访问控制。虽然 SQL 是一门 ANSI(American National Standards Institute 美国国家标准化组织)标准的计算机语言,但是仍然存在着多种不同版本的 SQL 语言。然而,为了与 ANSI 标准相兼容,它们必须以相似的方式共同地来支持一些主要的命令(比如 SELECT、UPDATE、DELETE、INSERT、WHERE 等等)


一、一些最重要的 SQL 命令

  • SELECT - 从数据库中提取数据
  • UPDATE - 更新数据库中的数据
  • DELETE - 从数据库中删除数据
  • INSERT INTO - 向数据库中插入新数据
  • CREATE DATABASE - 创建新数据库
  • ALTER DATABASE - 修改数据库
  • CREATE TABLE - 创建新表
  • ALTER TABLE - 变更(改变)数据库表
  • DROP TABLE - 删除表
  • CREATE INDEX - 创建索引(搜索键)
  • DROP INDEX - 删除索引

    二、查询(SELECT)

    1、查询所有列

    SELECT * FROM Websites   

    2、查询指定列

    SELECT name,country FROM Websites;  

    3、查询并去重(DISTINCT )

    SELECT DISTINCT country FROM Websites;

    4、按条件查询where

    SELECT * FROM Websites WHERE id=1;

    SELECT * FROM Websites WHERE country='CN';

    一文读懂SQL的增删改查(基础教程),第1张

     5、SQL AND & OR 运算符

    从 "Websites" 表中选取国家为 "CN" 且alexa排名大于 "50" 的所有网站:

    SELECT * FROM Websites WHERE country='CN' AND alexa > 50;

    从 "Websites" 表中选取国家为 "USA" 或者 "CN" 的所有客户:

    SELECT * FROM Websites WHERE country='USA' OR country='CN';

    从 "Websites" 表中选取 alexa 排名大于 "15" 且国家为 "CN" 或 "USA" 的所有网站:

    SELECT * FROM Websites WHERE alexa > 15 AND (country='CN' OR country='USA');

    6、SQL ORDER BY 关键字

    ORDER BY 关键字用于对结果集进行排序。

    • ASC:表示按升序排序。
    • DESC:表示按降序排序。
      SELECT column1, column2, ...
      FROM table_name
      ORDER BY column1, column2, ... ASC|DESC;
      7、SQL LIMIT 关键字

      LIMIT指定返回的记录的数目

      SELECT *
      FROM Persons
      LIMIT 5;
      8、SQL LIKE 操作符

      LIKE 操作符用于在 WHERE 子句中搜索列中的指定模式。

      SELECT column1, column2, ...
      FROM table_name
      WHERE column LIKE pattern;
      

      示例

      选取 name 以字母 "G" 开始的所有客户

      SELECT * FROM Websites

      WHERE name LIKE 'G%';

      选取 name 以字母 "k" 结尾的所有客户:

      SELECT * FROM Websites

      WHERE name LIKE '%k';

      选取 name 包含模式 "oo" 的所有客户:

      SELECT * FROM Websites

      WHERE name LIKE '%oo%';

      选取 name 不包含模式 "oo" 的所有客户:

      SELECT * FROM Websites

      WHERE name NOT LIKE '%oo%';

      9、SQL IN 操作符

      IN 操作符允许您在 WHERE 子句中规定多个值。

      SELECT * FROM Websites

      WHERE name IN ('Google','百度','必应');

      9、SQL BETWEEN 操作符

      BETWEEN 操作符选取介于两个值之间的数据范围内的值。这些值可以是数值、文本或者日期。

      示例:

      选取 alexa 介于 1 和 20 之间的所有网站:

      SELECT * FROM Websites

      WHERE alexa BETWEEN 1 AND 20;

      选取 alexa 介于 1 和 20 之间但 country 不为 USA 和 IND 的所有网站:

      SELECT * FROM Websites

      WHERE (alexa BETWEEN 1 AND 20)

      AND country NOT IN ('USA', 'IND');

      选取 date 介于 '2016-05-10' 和 '2016-05-14' 之间的所有访问记录:

      SELECT * FROM access_log

      WHERE date BETWEEN '2016-05-10' AND '2016-05-14';

      三、插入(INSERT INTO)

      INSERT INTO 语句可以有两种编写形式。

      第一种形式无需指定要插入数据的列名,只需提供被插入的值即可

      INSERT INTO table_name
      VALUES (value1,value2,value3,...);

      第二种形式需要指定列名及被插入的值:

      INSERT INTO table_name (column1,column2,column3,...)
      VALUES (value1,value2,value3,...);

      示例:

      INSERT INTO Websites (name, url, alexa, country) VALUES ('百度','https://www.baidu.com/','4','CN');


      四、更新(UPDATE)

      UPDATE 语句用于更新表中已存在的记录。

      UPDATE table_name
      SET column1 = value1, column2 = value2, ...
      WHERE condition;

      注意:

      在更新记录时要格外小心!在上面的实例中,如果我们省略了 WHERE 子句,如下所示:

      UPDATE Websites
      SET alexa='5000', country='USA'

      执行以上代码会将 Websites 表中所有数据的 alexa 改为 5000,country 改为 USA。

      执行没有 WHERE 子句的 UPDATE 要慎重,再慎重。


      五、删除(DELETE)

      DELETE 语句用于删除表中的记录。

      DELETE FROM table_name
      WHERE condition;

      示例

      DELETE FROM Websites WHERE name='Facebook' AND country='USA';

      注意

      您可以在不删除表的情况下,删除表中所有的行。这意味着表结构、属性、索引将保持不变:

      DELETE FROM table_name;

      注释:在删除记录时要格外小心!因为您不能重来!


      总结

              以上就是今天要讲的内容,本文将学到如何使用 SQL 访问和处理数据系统中的数据的简单语法,那么在下一章节我们会进一步讲解SQL的高级教程:SQL的左联,右联,内联及SQL的一些内置函数COUNT() SUM()以及SQL的优化等等,如果本文章对正在电脑面前的你有帮助的话,可以给博主一个一键三连支持一下

上一篇:.bash

下一篇:21.Servlet 技术