SQL 查询命令

SELECT

语法

SELECT "column_name"

FROM "table_name";

返回一列

 SELECT Username FROM Users

返回多列

 SELECT Username, Password From Users

返回所有列

 SELECT * FROM Users

DISTINCT

语法

SELECT DISTINCT "column_name"

FROM "table_name";

示例

 SELECT DISTINCT Name FROM Users

WHERE

语法

SELECT "column_name"
FROM "table_name"
WHERE "condition";

示例

 SELECT * FROM Users WHERE Username = ‘HappyFramework’

AND OR

语法

SELECT "column_name"
FROM "table_name"
WHERE "simple condition"
{ [AND|OR] "simple condition"}+;

AND 示例

 SELECT * FROM Orders Where Sales >= 1000 AND Sales <= 5000

OR 示例

 SELECT * FROM Orders Where Sales < 1000 OR Sales > 5000

IN

语法

SELECT "column_name"
FROM "table_name"
WHERE "column_name" IN ('value1', 'value2', ...);

示例

 SELECT * FROM Users WHERE Username IN (Happyframework, shijiucha)

BETWEEN

语法

SELECT "column_name"
FROM "table_name"
WHERE "column_name" BETWEEN 'value1' AND 'value2';

示例

 SELECT * FROM Orders WHERE Sales BETWEEN 1000 AND 5000

LIKE

语法

SELECT "column_name"
FROM "table_name"
WHERE "column_name" LIKE {PATTERN};

% 示例

 SELECT * FROM Users WHERE Name LIKE '%光'

_ 示例

 SELECT * FROM Users WHERE Name LIKE '段光_'

ORDER BY

语法

SELECT "column_name"
FROM "table_name"
[WHERE "condition"]
ORDER BY "column_name" [ASC, DESC] {, "column_name" [ASC, DESC]}+;

示例

 SELECT * FROM Users ORDER BY Username ASC

带公式的示例

 SELECT * FROM Orders ORDER BY Receipt - Refund

AVG

语法

SELECT AVG("column_name")
FROM "table_name";

示例

 SELECT AVG(Sales) FROM Sales

COUNT

语法

SELECT COUNT("column_name")
FROM "table_name";

示例

 SELECT COUNT(DISTINCT *) FROM Sales

MAX

语法

SELECT MAX ("column_name")
FROM "table_name";

示例

 SELECT MAX(Sales) FROM Sales

MIN

语法

SELECT MIN ("column_name")
FROM "table_name";

示例

 SELECT MIN(Sales) FROM Sales

SUM

语法

SELECT SUM ("column_name")
FROM "table_name";

示例

 SELECT SUM(Sales) FROM Sales

GROUP BY

语法

SELECT "column_name1", "column_name2", ... "column_nameN", Function("column_nameN+1")
FROM "table_name"
GROUP BY "column_name1", "column_name2", ... "column_nameN";

示例

 SELECT Customer, SUM(Sales) FROM Orders GROUP BY Customer

Having

语法

SELECT ["column_name1"], Function("column_name2")
FROM "table_name"
[GROUP BY "column_name1"]
HAVING (arithmetic function condition);

示例

 SELECT Customer, SUM(Sales)
FROM Orders
GROUP BY Customer
HAVING SUM(Sales) > 10000

ALIAS

语法

SELECT "table_alias"."column_name1" "column_alias"
FROM "table_name" "table_alias";

示例

 SELECT U.Username 用户名 FROM Users U

AS

语法

SELECT "table_alias"."column_name1" "column_alias"
FROM "table_name" "table_alias";

示例

 SELECT U.Username AS 用户名 FROM Users AS U

INNER JOIN

语法

SELECT "column_name"
FROM "left_table_name"
INNER JOIN "right_table_name" ON "left_table_name"."left_column" = "right_table_name"."right_column";

示例

 SELECT Categories.Name, News.Content
FROM News
INNER JOIN Categories ON News.CategoryId = Categories.Id

OUTER JOIN

语法

SELECT "column_name"
FROM "left_table_name"
OUTER JOIN "right_table_name" ON "left_table_name"."left_column" = "right_table_name"."right_column";

示例

 SELECT Categories.Name, News.Content
FROM News
OUTER JOIN Categories ON News.CategoryId = Categories.Id

LEFT OUTER JOIN

语法

SELECT "column_name"
FROM "left_table_name"
LEFT OUTER JOIN "right_table_name" ON "left_table_name"."left_column" = "right_table_name"."right_column";

示例

 SELECT Categories.Name, News.Content
FROM News
LEFT OUTER JOIN Categories ON News.CategoryId = Categories.Id

RIGHT OUTER JOIN

语法

SELECT "column_name"
FROM "left_table_name"
RIGHT OUTER JOIN "right_table_name" ON "left_table_name"."left_column" = "right_table_name"."right_column";

示例

 SELECT Categories.Name, News.Content
FROM News
RIGHT OUTER JOIN Categories ON News.CategoryId = Categories.Id

CROSS JOIN

语法

SELECT "column_name"
FROM "left_table_name", "right_table_name";

示例

 SELECT Categories.Name, News.Content
FROM News, Categories

UNION

语法

[SQL Statement 1]
UNION
[SQL Statement 2];

示例

 SELECT Name FROM Users
UNION
SELECT * FROM Employees

UNION ALL

语法

[SQL Statement 1]
UNION ALL
[SQL Statement 2];

示例

 SELECT Name FROM Users
UNION ALL
SELECT * FROM Employees

INLINE VIEW

语法

SELECT "column_name" FROM (Inline View);

示例

 SELECT * FROM
(SELECT * FROM Users)

INTERSECT

语法

[SQL Statement 1]
INTERSECT
[SQL Statement 2];

示例

 SELECT Txn_Date FROM Store_Information
INTERSECT
SELECT Txn_Date FROM Internet_Sales;

MINUS

语法

[SQL Statement 1]
INTERSECT
[SQL Statement 2];

示例

 SELECT Txn_Date FROM Store_Information
MINUS
SELECT Txn_Date FROM Internet_Sales;

TOP

语法

SELECT TOP N [PERCENT] "column_name"
FROM "table_name";

示例

 SELECT TOP 2 Store_Name, Sales, Txn_Date
FROM Store_Information
ORDER BY Sales DESC;

百分比示例

 SELECT TOP 25 PERCENT Store_Name, Sales, Txn_Date
FROM Store_Information
ORDER BY Sales DESC;

SUBQUERY

语法

 SELECT "column_name1"
FROM "table_name1"
WHERE "column_name2" [Comparison Operator]
(SELECT "column_name3"
FROM "table_name2"
WHERE "condition");

示例

 SELECT SUM (Sales) FROM Store_Information
WHERE Store_Name IN
(SELECT Store_Name FROM Geography
WHERE Region_Name = 'West');
 SELECT SUM (a1.Sales) FROM Store_Information a1
WHERE a1.Store_Name IN
(SELECT Store_Name FROM Geography a2
WHERE a2.Store_Name = a1.Store_Name);

EXISTS

语法

SELECT "column_name1"
FROM "table_name1"
WHERE EXISTS
(SELECT *
FROM "table_name2"
WHERE "condition");

示例

 SELECT *
FROM Users
WHERE EXISTS (SELECT * FROM UserRoleRelations WHERE Users.Id = UserRoleRelations.UserId)

SIMPLE CASE

语法

SELECT CASE ("column_name")
WHEN "value1" THEN "result1"
WHEN "value2" THEN "result2"
...
[ELSE "resultN"]
END
FROM "table_name";

示例

 SELECT Username, CASE (UserType)
WHEN 1 THEN "管理员"
WHEN 2 THEN "员工"
ELSE "未知"
FROM Users

SEARCHED CASE

语法

SELECT CASE
WHEN "condition1" THEN "result1"
WHEN "condition2" THEN "result2"
...
[ELSE "resultN"]
END
FROM "table_name";

示例

 SELECT Username, CASE
WHEN UserType = 1 THEN "管理员"
WHEN UserType = 2 THEN "员工"
ELSE "未知"
FROM Users

SQL:查询学习笔记的更多相关文章

  1. 【SQL Server学习笔记】Delete 语句、Output 子句、Merge语句

    原文:[SQL Server学习笔记]Delete 语句.Output 子句.Merge语句 DELETE语句 --建表 select * into distribution from sys.obj ...

  2. SQL查询(笔记2——实体查询)

    SQL查询(笔记2——实体查询) 二.实体查询 如果查询返回了某个数据表的全部数据列,且该数据表有对应的持久化类映射,我们就把查询结果转换成实体查询.将查询结果转换成实体,可以使用SQLQuery提供 ...

  3. SQL server2005学习笔记(一)数据库的基本知识、基本操作(分离、脱机、收缩、备份、还原、附加)和基本语法

    在软件测试中,数据库是必备知识,假期闲里偷忙,整理了一点学习笔记,共同探讨. 阅读目录 基本知识 数据库发展史 数据库名词 SQL组成 基本操作 登录数据库操作 数据库远程连接操作 数据库分离操作 数 ...

  4. sql查询学习和实践点滴积累

    https://blog.rjmetrics.com/2008/10/28/correlated-subqueries-in-mysql/ http://www.mysqltutorial.org/m ...

  5. MVC中使用Entity Framework 基于方法的查询学习笔记 (二)

    解释,不解释: 紧接上文,我们在Visual Studio2012中看到系统为我们自动创建的视图(View)文件Index.cshtml中,开头有如下这句话: @model IEnumerable&l ...

  6. 多线程处理慢sql查询小笔记~

    多线程处理慢sql查询以及List(Array)的拆分 系统数据量不大,但是访问速度特别慢,使用多线程优化一下!!! 优化结果:访问时间缩短了十几秒  25s --> 8s 一.List的拆分: ...

  7. Java SQL注入学习笔记

    1 简介 文章主要内容包括: Java 持久层技术/框架简单介绍 不同场景/框架下易导致 SQL 注入的写法 如何避免和修复 SQL 注入 2 JDBC 介绍 JDBC: 全称 Java Databa ...

  8. SQL之联合查询学习笔记

    定义: 联合查询可合并多个相似的选择查询的结果集.等同于将一个表追加到另一个表,从而实现将两个表的查询组合到一起,使用谓词为UNION或UNION ALL. 语法格式 UNION 可以将两个或两个以上 ...

  9. sql注入学习笔记,什么是sql注入,如何预防sql注入,如何寻找sql注入漏洞,如何注入sql攻击 (原)

    (整篇文章废话很多,但其实是为了新手能更好的了解这个sql注入是什么,需要学习的是文章最后关于如何预防sql注入) (整篇文章废话很多,但其实是为了新手能更好的了解这个sql注入是什么,需要学习的是文 ...

随机推荐

  1. Elasticsearch: 权威指南---基础入门

    1.查看方式:GETURL:http://10.10.6.225:9200/?pretty pretty 在任意的查询字符串中增加pretty参数.会让Elasticsearch美化输出JSON结果以 ...

  2. day5模块学习--sys模块

    sys模块 sys模块是处理与系统相关的模块,sys(system),下面来看看sys模块常用的方法: 1.sys.argv         #命令行参数list,第一个元素是程序本身路径 2.sys ...

  3. 程序设计实习MOOC / 程序设计与算法(三)第一周测验

    作业题: 7. 填空(2分)简单的swap 通过码是 ( 请参考公告中的“关于编程作业的说明”完成编程作业(请注意,编程题都要求提交通过码,在openjudge上提交了程序并且通过以后,就可以下载到通 ...

  4. 【LOJ】#2069. 「SDOI2016」齿轮

    题解 我一开始还努力想这道题是不是有坑,被SDOI折磨到我觉得不能有那么水的题在-- 就是带权并查集维护一下两点间距离,如果新加一条边两个点在同一集合,看看已有的路径和新加的路径是否相等 乘积可以在模 ...

  5. 包装印刷行业裕同集团&易普优APS项目顺利验收!

    裕同集团&易普优APS项目于2017年7月启动,2018年1月上线,2018年5月初项目顺利验收!历时十个月,龙岗作为裕同集团APS的先锋试点项目,同时也是业务最复杂的分公司,双方联合团队紧密 ...

  6. TypeScript的数据类型总结

    全局下载:npm i typescript -g 编译.ts文件:tsc  1.ts自动生成对应js文件 基本类型: 1.布尔,数字,字符串 ts文件 //布尔类型 var a:boolean=tru ...

  7. 百度地图API--Key的获得

    [开年后花了半个月的时间学习了百度地图API开发,准备投入项目中,学习的过程中写了一些简单的总结,在部门内部做了一个简单的分享培训,这里希望将自己的仅有的一点点关于百度地图API的收获分享给社区,整个 ...

  8. CentOS 编译源码安装MySQL-5.6.16

    mysql5.6.16的安装和之前的5.5.5.1有些不同,编译的时候不再使用./configure来进行了,使用了cmake命令来进行编译项目. 1.准备编译环境 yum -y installmak ...

  9. shell 统计行数

    语法:wc [选项] 文件… 说明:该命令统计给定文件中的字节数.字数.行数.如果没有给出文件名,则从标准输入读取.wc同时也给出所有指定文件的总统计数.字是由空格字符区分开的最大字符串. 该命令各选 ...

  10. Swift2.0语言教程之类的方法

    Swift2.0语言教程之类的方法 Swift2.0语言的方法 方法其实就是函数,只不过它被定义在了类中.在Swift中,根据被使用的方式不同,方法分为了实例方法和类型方法两种.这两种方法的定义也和O ...