SQL查询语句(基础篇)

SQL是一门较为通用的用来操作数据库的语言,是用于访问和处理数据库的标准的计算机语言.

数据库管理系统可以操作数据库,对外暴露的接口大多是支持SQL语言的.

SQL语句分为两部分:

  • 数据查询语言(DQL: Data Query Language)
  • 数据操纵语言(DML:Data Manipulation Language)

关系型数据库包括多张表和表之间的关系.

CREATE DATABASE 创建数据库

注意:SQL语句的关键字中的大小写是不敏感的

CREATE DATABASE dbname;

示例:

CREATE DATABASE test;

CREATE TABLE 创建表

CREATE TABLE table_name(
    column_name1 data_type(size),
    column_name2 data_type(size),
    column_name3 data_type(size),
    ....
)
  • table_name和column_name不需要用引号包围
  • data_type(size)的常用类型有:
数据类型 说明
INT(size) 存储intage变量,size是最大位数,默认为11
DECIMAL(size,d) 存储double变量,允许固定的小数点,size规定整数的最大位数,d表示小数点右边的最大位数
CHAR(size) 存储固定长度的String,size指定String的长度
VARCHAR(size) 存储可变长度的String,size指定String的最大长度
DATETIME() 存储日期和时间,格式为YYYY-MM-DD HH:MM:SS

示例:

CREATE TABLE Persons(
    PersonID int,
    LastName varchar(255),
    FirstName varchar(255),
    Address varchar(255),
    City varchar(255),
);

INSERT INTO 插入数据

INSERT INTO table_name (
    column_name1, 
    column_name2,
    ...
) VALUES (
    value1, 
    value2,
    ....
);

示例:

INSERT INTO Persons (
    LastName, 
    Address
) VALUES (
    'Wilson', 
    'Champs-Elysees'
);

SELECT 查询数据

SELECT语句从表中选取数据,返回一张表(被称为结果集)

SELECT 
    column_name1,
    column_name2,
    ...
FROM 
    table_name;

​*​通配符代表所有的列.

示例:

SELECT 
    *
FROM 
    Persons;
--返回Person表中所有的字段

DISTINCT 去重

SELECT DISTINCT 
    column_name 
FROM 
    table_name;

注意:如果只查询一个字段,那么很显然distinct会对查询的字段进行去重,但如果查询的是多个字段,俺么distinct去重的其实是多个字段的组合

WHERE 条件过滤

SELECT 
    column_name 
FROM 
    table_name 
WHERE 
    Boolean;

布尔表达式中可以包含column_name,只有当该行使WHERE语句后面的布尔表达式返回true时,该行才会被显示

常见的逻辑运算符有=​,​(不等于),>​,=​,<=​,BETWEEN​,LIKE​,其中,BETWEEN​和LIKE​将在后面的进阶教程说明

除此之外,还可以用AND​和OR​来连接两个布尔表达式,布尔表达式中也可以用圆括号来确定运算优先级

ORDER BY 排序

SELECT 
    column_name
FROM 
    table_name
ORDER BY
    column_name1,
    column_name2
    ASC/DESC

若要按照升序排序,请使用ASC​,若要按照降序排序,请使用DESC​

如果对多个字段进行排序,那么排在前面的字段优先级更高,以上,先对column_name1进行排序,然后在column_name1的内部对column_name2进行排序.

UPDATE 更新数据

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

注意:上面的SQL语句将对Boolean返回值为true的行进行更新,若省略了WHERE子句,则Boolean默认值为true,也就是所有行都会被更新!

示例(将一位用户的姓名从A修改到B):

UPDATE 
    Person
SET 
    Name='B'
WHERE 
    Name='A';

DELETE 删除数据

DELETE 
FROM 
    table_name
WHERE 
    Boolean;

DELETE是按照行删除的,所以不需要指定字段.

和UPDATE一样,如果省略了WHERE子句,Boolean的默认值是true,这代表将删除所有的行!

TRUNCATE TABLE 清除表数据

这条指令仅仅会删除表中的数据,而不会删除表的框架结构

TRUNCATE TABLE 
    table_name;

DROP TABLE 删除表

删除整张表,包含框架结构

DROP TABLE 
    table_name;

今天突然想开始更新BLOG,于是就有了这篇文章,是一些很基础的SQL语句,敲了一遍就当复习了www.明天要和朋友一起运转CRH2A去扬州,尝尝扬州炒饭,然后运转公交去镇江,最后从大港南站回南京,又是一个充实的周末!!

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
下一篇