# 系统慢日志查询 (A)

+ 搜索某个用户的 Top N 慢查询:
```
select query_time, query, user
from information_schema.slow_query
where is_internal = false  
  and user = "user1"        
order by query_time desc
limit 2;
+-------------------+--------------------------------------------------------------------------------+
| query_time        | query                                                                          |
+-------------------+--------------------------------------------------------------------------------+
| 12.77583857       | select * from t_slim, t_wide where t_slim.c0=t_wide.c0;                        |
|  0.734982725      | select t0.c0, t1.c1 from t_slim t0, t_wide t1 where t0.c0=t1.c0;               |
+-------------------+--------------------------------------------------------------------------------+
```
-------------------------------------------------------------
系统慢日志查询
日常生产中一些执行效率不好的 SQL 会对系统的稳定性造成影响。往往都是由于一些没有做好优化的 SQL 所导致，这就需要我们通过某些方式比较快速准确的定位到这些 SQL。定位慢 SQL 通常的办法是通过 TiDB Dashboard 就能完成大部分工作，但有时候我们需要根据特定的条件进行过滤就需要使用到 SLOW_QUERY 和 CLUSTER_SLOW_QUERY 系统表来帮助我们过滤定位问题
CLUSTER_SLOW_QUERY 与SLOW_QUERY 基本类似，基于 SLOW_QUERY的查询都可以替换为CLUSTER_SLOW_QUERY 系统表来进行全集群的慢语句的查询
搜索某个用户的 Top N 慢查询
```
select query_time, query, user
from information_schema.slow_query
where is_internal = false  -- 排除 TiDB 内部的慢查询 SQL
  and user = "user1"        -- 查找的用户名
order by query_time desc
limit 2;
+--------------+------------------------------------------------------------------+
| query_time   | query                                                            |
+--------------+------------------------------------------------------------------+
| 12.77583857  | select * from t_slim, t_wide where t_slim.c0=t_wide.c0;          |
|  0.734982725 | select t0.c0, t1.c1 from t_slim t0, t_wide t1 where t0.c0=t1.c0; |
+--------------+------------------------------------------------------------------+
```