美文网首页
SQL基础学习笔记

SQL基础学习笔记

作者: jacob_ | 来源:发表于2019-04-23 10:31 被阅读0次

    1 简介

    1.1 定义

    SQL(结构化查询语言Structured Query Language)是用于访问操作数据库中的数据的数据库编程语言。

    1.2 SQL标准命令

    • DDL(数据定义语言):包括创建、更改和删除数据库对象。
    CREATE TABLE-- 创建(在数据库中创建新表、表视图或其他对象)
    ALTER TABLE-- 更改 (修改现有的数据库对象,如表)
    DROP TABLE-- 删除  (删除数据库中的整个表、表或其他对象的视图)
    
    • DML(数据操作语言):数据操纵语言用于检索、插入和修改数据,数据操纵语言是最常见的SQL命令。
    INSERT-- 插入 (创建记录)
    DELETE-- 删除 (删除记录)
    UPDATE-- 修改(修改记录)
    SELECT -- 检索 (从一个或多个表检索某些记录)
    
    • CDL(数据操作语言):主要针对权限问题。
    GRANT-- 授予权限 
    REVOKE-- 撤销已授予的权限 
    

    1.3 (选择)语法

    Customer表
    • 定义:由数据库中选择数据
    //选择Customers表中CustomerName、City 两列
    SELECT CustomerName, City FROM Customers;
    //选择全部字段用*
    SELECT * FROM Customers;
    //仅列出每一列的不同值,即相同值只出现一次。
    SELECT DISTINCT City FROM Customers;
    //列出City列中不同值的数量
    SELECT COUNT(DISTINCT City ) FROM Customers;
    

    1.4 SQL WHERE Clause(查询子句)

    • 定义:WHERE子句用于提取满足指定标准的记录。
    // 选取所有字段中Country='Mexico'的那个,单引号
    SELECT * FROM Customers WHERE Country='Mexico';
    //选取所有字段中ID = 1那个
    SELECT * FROM Customers WHERE CustomerID=1;
    //选取所有字段中ID > 1那个
    SELECT * FROM Customers WHERE CustomerID>1;
    

    1.5 SQL AND, OR and NOT(与,或不是运算符)

    //从这几列中选出满足下列所有条件的数据
    SELECT column1, column2, ...
    FROM table_name
    WHERE condition1 AND condition2 AND condition3 ...;
    // 从这几列中选出满足下列某个条件的数据
    SELECT column1, column2, ...
    FROM table_name
    WHERE condition1 OR condition2 OR condition3 ...;
    //选出不满足该条件的
    SELECT column1, column2, ...
    FROM table_name
    WHERE NOT condition;
    

    例子如下:

    SELECT * FROM Customers 
    WHERE Country='Germany' 
    AND City='Berlin';
    
    SELECT * FROM Customers
    WHERE City='Berlin' OR City='München';
    
    SELECT * FROM Customers
    WHERE NOT Country='Germany';
    
    SELECT * FROM Customers 
    WHERE Country='Germany' 
    AND (City='Berlin' OR City='München');
    

    1.6 按关键字排序

    //选取全部字段并且按照Country字段升序排序
    SELECT * FROM Customers ORDER BY Country;
    //选取全部字段并且按照Country字段降序排序
    SELECT * FROM Customers ORDER BY Country DESC;
    //按两列数组排序
    SELECT * FROM Customers
    ORDER BY Country, CustomerName;
    

    1.7 SQL INSERT INTO 语句(在表中插入)

    INSERT INTO Customers (CustomerName, ContactName, Address, City, PostalCode, Country)
    VALUES ('Cardinal','Tom B. Erichsen','Skagen 21','Stavanger','4006','Norway');
    //也可以仅在指定列插入数据
    INSERT INTO Customers (CustomerName, City, Country)
    VALUES ('Cardinal', 'Stavanger', 'Norway');
    

    注意并不用插入ID,ID是一个会自动递增的数据

    1.8 SQL NULL Values(空值)

    SELECT column_names
    FROM table_name
    WHERE column_name IS NULL;
    
    SELECT LastName, FirstName, Address FROM Persons
    WHERE Address IS NOT NULL;
    

    1.9 SQL UPDATE 语句(更新表中的记录)

    语法:注意不能缺少WHERE否则所以数据都会更新

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

    例子:

    UPDATE Customers
    SET ContactName = 'Alfred Schmidt', City= 'Frankfurt'
    WHERE CustomerID = 1;
    

    1.10 SQL Delete 语句(删除表中的记录)

    还是要注意不能缺少WHERE

    DELETE FROM table_name
    WHERE condition;
    
    DELETE FROM Customers
    WHERE CustomerName='Alfreds Futterkiste';
    //删除所以数据
    DELETE FROM table_name;
    

    相关文章

      网友评论

          本文标题:SQL基础学习笔记

          本文链接:https://www.haomeiwen.com/subject/ptumgqtx.html