美文网首页
SQL基础语法

SQL基础语法

作者: CharmingWong | 来源:发表于2017-12-19 19:40 被阅读7次

查找

SELECT 列名称 FROM 表名称

以及

SELECT * FROM 表名称

Persons 表

Id LastName FirstName Address City
1 Adams John Oxford Street London
2 Bush George Fifth Avenue New York
3 Carter Thomas Changan Street Beijing

获取名为 "LastName" 和 "FirstName" 的列的内容

SELECT LastName,FirstName FROM Persons

结果

LastName FirstName
Adams John
Bush George
Carter Thomas

从 "Persons" 表中选取所有的列

SELECT * FROM Persons

结果

Id LastName FirstName Address City
1 Adams John Oxford Street London
2 Bush George Fifth Avenue New York
3 Carter Thomas Changan Street Beijing

更新

UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值

Persons 表

LastName FirstName Address City
Gates Bill Xuanwumen 10 Beijing
Wilson Champs-Elysees

更新某一行中的一个列,为 lastname 是 "Wilson" 的人添加 firstname

UPDATE Person SET FirstName = 'Fred' WHERE LastName = 'Wilson'

结果

LastName FirstName Address City
Gates Bill Xuanwumen 10 Beijing
Wilson Fred Champs-Elysees

更新某一行中的若干列,修改地址(address),并添加城市名称(city)

UPDATE Person SET Address = 'Zhongshan 23', City = 'Nanjing' WHERE LastName = 'Wilson'

结果

LastName FirstName Address City
Gates Bill Xuanwumen 10 Beijing
Wilson Fred Zhongshan 23 Nanjing

插入

INSERT INTO 表名称 VALUES (值1, 值2,....)

指定所要插入数据的列

INSERT INTO table_name (列1, 列2,...) VALUES (值1, 值2,....)

Persons 表

LastName FirstName Address City
Carter Thomas Changan Street Beijing

插入新的行

INSERT INTO Persons VALUES ('Gates', 'Bill', 'Xuanwumen 10', 'Beijing')

结果

LastName FirstName Address City
Carter Thomas Changan Street Beijing
Gates Bill Xuanwumen 10 Beijing

在指定的列中插入数据

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

结果

LastName FirstName Address City
Carter Thomas Changan Street Beijing
Gates Bill Xuanwumen 10 Beijing
Wilson Champs-Elysees

删除

DELETE FROM 表名称 WHERE 列名称 = 值

Persons 表

LastName FirstName Address City
Carter Thomas Changan Street Beijing
Gates Bill Xuanwumen 10 Beijing

删除FirstName为"Bill"的行

DELETE FROM Person WHERE FirstName = 'Bill'
LastName FirstName Address City
Carter Thomas Changan Street Beijing

结果

LastName FirstName Address City
Carter Thomas Changan Street Beijing

删除所有行

DELETE FROM table_name

DELETE * FROM table_name

WHERE

SELECT 列名称 FROM 表名称 WHERE 列 运算符 值

下面的运算符可在 WHERE 子句中使用

= 等于
<> 不等于
> 大于
< 小于
>= 大于等于
<= 小于等于
BETWEEN 在某个范围内
LIKE 搜索某种模式

注释:在某些版本的 SQL 中,操作符 <> 可以写为 !=

Persons表

LastName FirstName Address City Year
Adams John Oxford Street London 1970
Bush George Fifth Avenue New York 1975
Carter Thomas Changan Street Beijing 1980
Gates Bill Xuanwumen 10 Beijing 1985

选取居住在城市 "Beijing" 中的人

SELECT * FROM Persons WHERE City='Beijing'

结果

LastName FirstName Address City Year
Carter Thomas Changan Street Beijing 1980
Gates Bill Xuanwumen 10 Beijing 1985

请注意,我们在例子中的条件值周围使用的是单引号。
SQL 使用单引号来环绕文本值(大部分数据库系统也接受双引号)。如果是数值,请不要使用引号。

文本

这是正确的:
SELECT * FROM Persons WHERE FirstName='Bush'

这是错误的:
SELECT * FROM Persons WHERE FirstName=Bush

数值

这是正确的:
SELECT * FROM Persons WHERE Year>1965

这是错误的:
SELECT * FROM Persons WHERE Year>'1965'

AND & OR

AND 和 OR 运算符用于基于一个以上的条件对记录进行过滤。
AND 和 OR 可在 WHERE 子语句中把两个或多个条件结合起来。
如果第一个条件和第二个条件都成立,则 AND 运算符显示一条记录。
如果第一个条件和第二个条件中只要有一个成立,则 OR 运算符显示一条记录。

LastName FirstName Address City
Adams John Oxford Street London
Bush George Fifth Avenue New York
Carter Thomas Changan Street Beijing
Carter William Xuanwumen 10 Beijing

使用 AND 来显示所有姓为 "Carter" 并且名为 "Thomas" 的人:

SELECT * FROM Persons WHERE FirstName='Thomas' AND LastName='Carter'

结果

LastName FirstName Address City
Carter Thomas Changan Street Beijing

使用 OR 来显示所有姓为 "Carter" 或者名为 "Thomas" 的人

SELECT * FROM Persons WHERE firstname='Thomas' OR lastname='Carter'

结果

LastName FirstName Address City
Carter Thomas Changan Street Beijing
Carter William Xuanwumen 10 Beijing

结合 AND 和 OR 运算符

SELECT * FROM Persons WHERE (FirstName='Thomas' OR FirstName='William')
AND LastName='Carter'

结果

LastName FirstName Address City
Carter Thomas Changan Street Beijing
Carter William Xuanwumen 10 Beijing

ORDER BY

ORDER BY 语句用于对结果集进行排序。
ORDER BY 语句用于根据指定的列对结果集进行排序。
ORDER BY 语句默认按照升序对记录进行排序。
如果您希望按照降序对记录进行排序,可以使用 DESC 关键字。

Orders 表

Company OrderNumber
IBM 3532
W3School 2356
Apple 4698
3School 6953

以字母顺序显示公司名称

SELECT Company, OrderNumber FROM Orders ORDER BY Company

结果

Company OrderNumber
Apple 4698
IBM 3532
W3School 6953
W3School 2356

以字母顺序显示公司名称(Company),并以数字顺序显示顺序号(OrderNumber)

SELECT Company, OrderNumber FROM Orders ORDER BY Company, OrderNumber

结果

Company OrderNumber
Apple 4698
IBM 3532
W3School 2356
W3School 6953

以逆字母顺序显示公司名称

SELECT Company, OrderNumber FROM Orders ORDER BY Company DESC

结果

Company OrderNumber
W3School 6953
W3School 2356
IBM 3532
Apple 4698

以逆字母顺序显示公司名称,并以数字顺序显示顺序号

SELECT Company, OrderNumber FROM Orders ORDER BY Company DESC, OrderNumber ASC

结果

Company OrderNumber
W3School 2356
W3School 6953
IBM 3532
Apple 4698

DISTINCT

SELECT DISTINCT 列名称 FROM 表名称
Company OrderNumber
IBM 3532
W3School 2356
Apple 4698
W3School 6953

如果要从 "Company" 列中选取所有的值,我们需要使用 SELECT 语句

SELECT Company FROM Orders

结果

Company
IBM
W3School
Apple
W3School

如需从 Company" 列中仅选取唯一不同的值,我们需要使用 SELECT DISTINCT 语句

SELECT DISTINCT Company FROM Orders

结果

Company
IBM
W3School
Apple

欢迎关注

个人微信公众号:Charming写字的地方

Github:https://github.com/CharmingWhttps://github.com/CharmingW

感谢阅读!

相关文章

  • 二、SQL笔记--MySQL基本操作

    一、SQL语法规则 SQL语法规则:SQL是一种结构化编程语言 基础SQL指令通常是以行为单位 SQL指令需要语句...

  • 每天一SQL语句(01):SQL 语句基础篇

    【开篇】SQL 语句基础篇 【前言】SQL 语法 1、SQL 注意事项 (1)SQL语句对大小写不敏感。 (2) ...

  • SQL语法基础

    数据库操作 查看数据库MySQL服务器中的所有的数据库: 查看某个数据库的定义的信息: 删除数据库 切换数据库 查...

  • SQL 基础语法

    http://www.w3school.com.cn/sql/sql_syntax.asp IOS 面试题 htt...

  • SQL基础语法

    查找 以及 Persons 表 获取名为 "LastName" 和 "FirstName" 的列的内容 结果 从 ...

  • SQL基础语法

    基本增,删,查,改操作 假设存在数据库为WebApplication 表名User 如下所示 IDUsername...

  • SQL基础语法

    参考资料https://blog.csdn.net/qq_38225558/article/details/827...

  • sql语法 基础

    1,DDL(Data Definition Language) 数据定义语言 :create,drop,alter...

  • Android SQLite 使用纪录

    写在前面 看完本文你将掌握以下内容 掌握简单 SQL 语法 掌握 SQLite 的简单操作 基础知识 SQL 语法...

  • 蔓蔓的学习之路😂

    前端:java语法基础,python语法基础,爬虫,各种大数据技术; 数据库:mysql,sql等等各种数据库 数...

网友评论

      本文标题:SQL基础语法

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