# 随机选取慢怎么办
## rand()
```sql
select rand();
-- 随机选取一条数据
select title, description from `film` order by rand() limit 1;
```
### 随机选取一条数据的过程
1. 创建一个临时表,临时表字段为 rand, title, description
2. 从源表中取出一行,调用 rand(),将结果和数据放入临时表 (`会将源表遍历,所有行都放入到临时表`) -> `第一个临时表`
3. 针对第一个临时表,将 rand 字段 + 行位置(第一个临时表�