zoukankan      html  css  js  c++  java
  • SQL 基本语法

    样本数据库:

    +----+--------------+---------------------------+-------+---------+
    | id | name         | url                       | alexa | country |
    +----+--------------+---------------------------+-------+---------+
    | 1  | Google       | https://www.google.cm/    | 1     | USA     |
    | 2  | 淘宝          | https://www.taobao.com/   | 13    | CN      |
    | 3  | 菜鸟教程      | http://www.runoob.com/    | 4689  | CN      |
    | 4  | 微博          | http://weibo.com/         | 20    | CN      |
    | 5  | Facebook     | https://www.facebook.com/ | 3     | USA     |
    +----+--------------+---------------------------+-------+---------+

    SQL SELECT 语句

    定义:

    SELECT语句用于从数据库中选取数据。

    语法:

    SELECT column_name, column_name

    FROM table_name;

    SELECT * FROM table_name;

    SQL SELECT DISTINCT语句

    定义:

    SELECT DISTINCT 语句用于返回唯一不同的值。

    语法:

    SELECT DISTINCT column_name, column_name

    FROM table_name;

    示例:

    SELECT DISTINCT country FROM Websites;

    输出结果:

    SQL WHERE 子句

    定义:

    WHERE 子句用于提取那些满足指定条件的记录。

    语法:

    SELECT column_name, column_name

    FROM table_name

    WHERE column_name operator value;

    示例:

    SELECT * FROM Websites WHERE country='CN';

    Where +条件(筛选行)

    条件:列,比较运算符,值

    比较运算符包涵:= > < >= ,<=, !=,<> 表示(不等于)

    Select * from emp where ename='SMITH';

    例子中的 SMITH 用单引号引起来,表示是字符串,字符串要区分大小写。

    逻辑运算

    And:与 同时满足两个条件的值。

    Select * from emp where sal > 2000 and sal < 3000;

    查询 EMP 表中 SAL 列中大于 2000 小于 3000 的值。

    Or:或 满足其中一个条件的值

    Select * from emp where sal > 2000 or comm > 500;

    查询 emp 表中 SAL 大于 2000 或 COMM 大于500的值。

    Not:非 满足不包含该条件的值。

    select * from emp where not sal > 1500;

    查询EMP表中 sal 小于等于 1500 的值。

    逻辑运算的优先级:

    ()    not        and         or

    特殊条件

    1.空值判断: is null

    Select * from emp where comm is null;

    查询 emp 表中 comm 列中的空值。

    2.between and (在 ... 之间的值)

    Select * from emp where sal between 1500 and 3000;

    查询 emp 表中 SAL 列中大于 1500 的小于 3000 的值。

    注意:大于等于 1500 且小于等于 3000, 1500 为下限,3000 为上限,下限在前,上限在后,查询的范围包涵有上下限的值。

    3.In

    Select * from emp where sal in (5000,3000,1500);

    查询 EMP 表 SAL 列中等于 5000,3000,1500 的值。

    4.like 模糊查询

    Select * from emp where ename like 'M%';

    查询 EMP 表中 Ename 列中有 M 的值,M 为要查询内容中的模糊信息。

    •  % 表示多个字值,_ 下划线表示一个字符;
    •  M% : 为能配符,正则表达式,表示的意思为模糊查询信息为 M 开头的。
    •  %M% : 表示查询包含M的所有内容。
    •  %M_ : 表示查询以M在倒数第二位的所有内容。

    SQL ORDER BY 关键字

    定义:

    ORDER BY 关键字用于对结果集按照一个列或者多个列进行排序。

    ORDER BY 关键字默认按照升序对记录进行排序。如果需要按照降序对记录进行排序,可使用 DESC 关键字。

    语法:

    SELECT column_name, column_name

    FROM table_name

    ORDER BY column_name, column_name ASC | DESC;

    示例 (单列):

    SELECT * FROM Websites ORDER BU alexa;

    示例 (多列):

    SELECT * FROM Websites ORDER BY country, alexa;

    SQL INSERT INTO 语句

    定义:

    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');

    SQL UPDATE 语句

    定义:

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

    语法:

    UPDATE table_name

    SET column1=value1, column2=value2, ..

    WHERE some_column = some_value;

    示例:

    UPDATE Websites SET alexa = '5000', country = 'USA' WHERE name = '菜鸟教程';

    SQL DELETE 语句

    定义:

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

    语法:

    DELETE FROM table_name

    WHERE some_column = some_value;

    示例:

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

    参考链接:https://www.runoob.com/sql

  • 相关阅读:
    POJ1985 树的直径(BFS
    POJ2186 强连通分量+缩点
    AIM Tech Round 5C. Rectangles 思维
    POJ2553 汇点个数(强连通分量
    hdu6370 并查集+dfs
    UVALive 7037:The Problem Needs 3D Arrays(最大密度子图)
    POJ 3155:Hard Life(最大密度子图)
    HDU 5527:Too Rich(DFS+贪心)***
    HDU 5534:Partial Tree(完全背包)***
    Wannafly挑战赛1:Treepath(DFS统计)
  • 原文地址:https://www.cnblogs.com/john1015/p/13645884.html
Copyright © 2011-2022 走看看