mysql 排序 (row_number、dense_rank、rank)索引(主键索引、唯一索引、普通索引、全文索引、多列索引)语句执行顺序
2021/7/26 2:35:31
本文主要是介绍mysql 排序 (row_number、dense_rank、rank)索引(主键索引、唯一索引、普通索引、全文索引、多列索引)语句执行顺序,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
mysql 添加索引 mysql 如何创建索引
1.添加PRIMARY KEY(主键索引)
mysql>ALTER TABLE table_name
ADD PRIMARY KEY ( column
)
2.添加UNIQUE(唯一索引)
mysql>ALTER TABLE table_name
ADD UNIQUE ( column
)
3.添加INDEX(普通索引)
mysql>ALTER TABLE table_name
ADD INDEX index_name ( column
)
4.添加FULLTEXT(全文索引)
mysql>ALTER TABLE table_name
ADD FULLTEXT ( column
)
5.添加多列索引
mysql>ALTER TABLE table_name
ADD INDEX index_name ( column1
, column2
, column3
)
排序
row_number对应唯一排序:1、2、3、4
dense_rank对应相同次序可重复,但不跳过下一个次序值:1、2、2、3
rank对应相同次序可重复,并且跳过下一个次序值:1、2、2、4
where in 可以多个条件一起 如下:
牛客sql67
select du.name as u_n,dc.name as c_n,dl.date
from login dl
left join user du on du.id = dl.user_id
left join client dc on dc.id = dl.client_id
where (dl.user_id,dl.date) in
(select user_id, max(date) as date
from login
group by user_id
)
order by du.name
SELECT语句执行顺序
SELECT语句中子句的执行顺序与SELECT语句中子句的输入顺序是不一样的,所以并不是从SELECT子句开始执行的,而是按照下面的顺序执行:
开始->FROM子句->WHERE子句->GROUP BY子句->聚集函数(sum(),count()…)->HAVING子句->ORDER BY子句->SELECT子句->LIMIT子句->最终结果
每个子句执行后都会产生一个中间结果,供接下来的子句使用,如果不存在某个子句,就跳过
这篇关于mysql 排序 (row_number、dense_rank、rank)索引(主键索引、唯一索引、普通索引、全文索引、多列索引)语句执行顺序的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-04部署MySQL集群项目实战:新手入门教程
- 2024-11-04如何部署MySQL集群资料:新手入门指南
- 2024-11-02MySQL集群项目实战:新手入门指南
- 2024-11-02初学者指南:部署MySQL集群资料
- 2024-11-01部署MySQL集群教程:新手入门指南
- 2024-11-01如何部署MySQL集群:新手入门教程
- 2024-11-01部署MySQL集群学习:新手入门教程
- 2024-11-01部署MySQL集群入门:新手必读指南
- 2024-10-23BinLog入门:新手必读的MySQL二进制日志指南
- 2024-10-23Binlog入门:MySQL数据库的日志管理指南