Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
L
lesson plan
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Bugzilla
Bugzilla
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
王雷
lesson plan
Commits
0bd819d1
Commit
0bd819d1
authored
Jan 24, 2019
by
王雷
😹
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Update (SQL)优化分析与方法.md
parent
223de1a7
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
1 addition
and
1 deletion
+1
-1
(SQL)优化分析与方法.md
(SQL)优化分析与方法.md
+1
-1
No files found.
(SQL)优化分析与方法.md
View file @
0bd819d1
...
@@ -27,7 +27,7 @@
...
@@ -27,7 +27,7 @@
  
在讲解如何优化 SQL 之前,我们先介绍几个关键字,这些关键字大家在日常的开发中肯定经常用到,但具体是做什么用的恐怕就不那么清楚了,所以,让我们先从这些“最熟悉的陌生人”开始,对我们的工作内容做一个深度了解。
  
在讲解如何优化 SQL 之前,我们先介绍几个关键字,这些关键字大家在日常的开发中肯定经常用到,但具体是做什么用的恐怕就不那么清楚了,所以,让我们先从这些“最熟悉的陌生人”开始,对我们的工作内容做一个深度了解。
1.
select:这个是 DQL 最常见的关键字,我们基本上用在了所有的查询开始的地方,在 DQL 语句中,select 表示一个查询的开始或者一个子查询的开始,紧跟在
```select```
后面的就是我们要从数据库中提取后返回给调用方的数据项,当
```select```
后面跟随一个
```*```
时,表示我们要将所有查询到的数据项都返回;
1.
select:这个是 DQL 最常见的关键字,我们基本上用在了所有的查询开始的地方,在 DQL 语句中,select 表示一个查询的开始或者一个子查询的开始,紧跟在
```select```
后面的就是我们要从数据库中提取后返回给调用方的数据项,当
```select```
后面跟随一个
```*```
时,表示我们要将所有查询到的数据项都返回;
2.
from:99.999% 的 DQL 中都会包含
```from```
关键字,它用来标识我们要查询的数据的来源,
```from```
后面可以是数据表(table),视图(view)甚至是另一个 DQL
*
**(子查询)**
*
,
```from```
后面可以跟随一个或多个数据来源,使用 “,” (西文半角逗号)进行分割;
2.
from:99.999% 的 DQL 中都会包含
```from```
关键字,它用来标识我们要查询的数据的来源,
```from```
后面可以是数据表(table),视图(view)甚至是另一个 DQL
*
(子查询)
*
,
```from```
后面可以跟随一个或多个数据来源,使用 “,” (西文半角逗号)进行分割;
> 在某些数据库中,如 MySQL,在调用一个函数或直接返回一个自定义常量时可以不写 from 关键字,如我们配置在数据库连接池中,为连接对象验活的语句 ```select 1```,或者直接调用一个函数,如查询当前数据库服务器时间 ```select now()```,但不是所有的数据库都支持省略 from 关键字,如 ORACLE,所以为了保证数据库兼容,我们要求不能省略 ```from``` 关键字,像上面两个语句,要改写为 ```select 1 from dual``` 和 ```select now() from dual```,dual 是数据库中提供的一个只有一列的系统表,一般我们称之为伪表或虚拟表。
> 在某些数据库中,如 MySQL,在调用一个函数或直接返回一个自定义常量时可以不写 from 关键字,如我们配置在数据库连接池中,为连接对象验活的语句 ```select 1```,或者直接调用一个函数,如查询当前数据库服务器时间 ```select now()```,但不是所有的数据库都支持省略 from 关键字,如 ORACLE,所以为了保证数据库兼容,我们要求不能省略 ```from``` 关键字,像上面两个语句,要改写为 ```select 1 from dual``` 和 ```select now() from dual```,dual 是数据库中提供的一个只有一列的系统表,一般我们称之为伪表或虚拟表。
3.
inner join:用来做两个数据来源的关联使用,使用 on 关键字来进行数据关联,一般用在多表(视图)查询上,一般 inner join 也可以写为逗号分隔的方式,然后将 on 条件转义到 where 中;使用 inner join 只有当数据来源存在时,才会返回数据;
3.
inner join:用来做两个数据来源的关联使用,使用 on 关键字来进行数据关联,一般用在多表(视图)查询上,一般 inner join 也可以写为逗号分隔的方式,然后将 on 条件转义到 where 中;使用 inner join 只有当数据来源存在时,才会返回数据;
4.
join:join 就是对 inner join 的简写
4.
join:join 就是对 inner join 的简写
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment