SQL教程笔记(w3school)

这篇博客是关于SQL句法的介绍,涵盖了基础知识和主要的SQL语句,包括SELECT、SELECT DISTINCT、WHERE、AND & OR、ORDER BY、INSERT INTO、UPDATE和DELETE。解释了如何从数据库中提取、更新和删除数据,以及如何使用WHERE子句进行条件过滤和ORDER BY进行排序。

SQL 句法

基础知识

  • 数据库(database) – 表格(table) – 记录(record)& 列(column)
  • 数据库操作通过SQL statements实现
  • SQL 语句(statements)不区分大小写
  • 某些数据库会要求语句最后添加分号(;),所以在所有语句最后添加分号才是标准写法
  • 一些重要的SQL语句:
    SELECT - extracts data from a database
    UPDATE - updates data in a database
    DELETE - deletes data from a database
    INSERT INTO - inserts new data into a database
    CREATE DATABASE - creates a new database
    ALTER DATABASE - modifies a database
    CREATE TABLE - creates a new table
    ALTER TABLE - modifies a table
    DROP TABLE - deletes a table
    CREATE INDEX - creates an index (search key)
    DROP INDEX - deletes an index

SQL语句

SELECT
  • 用于从数据库中选择数据,结果储存在结果集合(result-set)中

    SELECT column_name,column_name
    FROM table_name;
    
  • 也可以用 * 表示全部列:

    SELECT * FROM table_name;
    
SELECT DISTINCT
  • distinct是关键字(keyword),表示仅检索不同的值,必须放在列名前面,作用于其后的所有列

    SELECT DISTINCT column_name,column_name
    FROM table_name;
    
WHERE
  • where是子句(clause)用于过滤结果,仅检索符合条件的记录

    SELECT column_name,column_name
    FROM table_name
    WHERE column_name operator value;
    
  • 对于字符串,SQL要求使用单引号( ’ ’ ),大多数数据库也支持双引号
  • 如果是数字域,则不应该使用引号

    SELECT * FROM Customers
    WHERE Country='Mexico';
    
    SELECT * FROM Customers
    WHERE CustomerID=1;
    
  • where中的操作符:
OperatorDescription
=Equal
<>Not equal. Note: In some versions of SQL this operator may be written as !=
>Greater than
<Less than
>=Greater than or equal
<=Less than or equal
BETWEENBetween an inclusive range
LIKESearch for a pattern
INTo specify multiple possible values for a column
AND & OR
  • 用于过滤多个条件
    如:

    SELECT * FROM Customers
    WHERE Country='Germany'
    AND (City='Berlin' OR City='München');
    
ORDER BY
  • 根据某一列或多列对结果集进行排序
  • 默认升序排列,若要降序排列可以用DESC关键字,加在列名后面,只作用于最近的一列

    SELECT column_name, column_name
    FROM table_name
    ORDER BY column_name ASC|DESC, column_name ASC|DESC;
    
INSERT INTO
  • 往表格中插入新记录
  • 可以指定列名(可仅指定某些列名,未指定的列名值为null)或不指定列名(value数需等于列数)

    INSERT INTO table_name
    VALUES (value1,value2,value3,...);
    
    INSERT INTO table_name (column1,column2,column3,...)
    VALUES (value1,value2,value3,...);
    
UPDATE
  • 更改已存在的记录
  • 若没有where子句,则所有记录都会被更新

    UPDATE table_name
    SET column1=value1,column2=value2,...
    WHERE some_column=some_value;
    
DELETE
  • 删除记录
  • 若没有where子句,则所有记录都会被删除(无法复原)

    DELETE FROM table_name
    WHERE some_column=some_value;
    
    DELETE * FROM table_name;
    

来源:http://www.w3schools.com/sql/

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值