数据库查询速度非常慢

发布于 科技 2024-06-29
5个回答
  1. 匿名用户2024-01-30

    仅通过查看 SQL 很难判断。

    我不知道你的查询是否很慢。

    它在搜索的地方很慢。

    6) and ,3)

    在排序的地方仍然很慢。

    distinct

    order by asc

    在检索的地方很慢。

    如果允许索引。

    然后,clients 表创建一个包含两个字段的索引:(userid, serverid)。

    然后,clientinfo 表创建一个包含两个公式的索引:(left(userid,6) 和 right(userid,3))。

    但是,不能保证索引会起作用。

    如果两个字段大部分相同,估计不会有太大影响。

    如果索引创建后没有效果,则将其删除,不要影响其他操作。

  2. 匿名用户2024-01-29

    将索引添加到 clients 表的首次索引。

  3. 匿名用户2024-01-28

    在数据库服务器上的 mysql 窗口中执行,并很快将超过 100W 的记录导出到 excel。

    mysql> select * into outfile '/tmp/rpt_style1_' from `csf_pub`.`rpt_style1_0` ;

    query ok, 1628696 rows affected ( sec)

  4. 匿名用户2024-01-27

    这样做的方法有很多种,第一种是优化查询SQL避免全表搜索,第二种是添加联合索引,第三种是使用表分区来存储数据,SQL直接查询对应的分区表。

  5. 匿名用户2024-01-26

    问:我们有一个 sql,用于查找没有主键和唯一键的表,但它在 mysql 上运行得很慢,我们该怎么办?

    在实验中,我们设置了一个MySQL环境,这里省略了构建步骤。

    编写一个简单的脚本来制作一批带主键和不带主键的表:

    执行以下脚本:

    现在执行以下 sql 查看效果:

    执行,感觉很慢。

    现在我们用DBA三板斧头,看一下执行计划:

    感觉有点苦,因为信息是元数据表,没有必要的统计信息。

    让我们显示警告并看一下 mysql 重写后的 sql

    让我们格式化 sql:

    你可以看到 mysql 会。

    select from a where not in (select x from b) 是非关联子查询。

    我转换了它。 从不存在的地方选择(从 B 中选择 1,其中 = 关联的子查询。

    如果我们自己是MySQL,我们可以在执行非关联子查询时使用一个非常简单的策略:

    select from a where not in (select x from b where ..非关联子查询:1

    扫描表B中的所有记录,找到符合条件的记录,将其存储在临时表C中,并建立索引2扫描表 A 中的记录,将其与临时表 C 中的记录进行比较,并直接在索引中进行比较,而关联子查询需要循环迭代:

    select from a where not exists (select 1 from b where = and ..关联的子查询扫描表 A 的每个记录 RA:扫描表 B 以查找满足 RA 条件的第一条记录。

    显然,关联子查询的扫描成本将高于非关联子查询的扫描成本。

    我们希望MySQL能排在第一位"缓存"子查询的结果(缓存这一步称为物化),但是MySQL认为不缓存更快,所以我们需要给MySQL一些指导。

    可以看到执行时间变成了 。

    1.对于信息架构中的元数据表,执行计划不提供有效信息。

    2.通过查看 MySQL 重写的 SQL,我们猜测优化器存在误报。

    3.我们添加了提示来指导 MySQL 做出正确的优化判断。

    但目前,我们的实验仅限于猜测,如果我们猜对了,一切都会好起来的,如果我们猜不到,我们将无法做出好的诊断。

相关回答
5个回答2024-06-29

奥拉尔塞?

select a.名称,A**,wm_concat(b. >>>More

4个回答2024-06-29

例如,查找性能较差的 10 个 sql

select * from >>>More

12个回答2024-06-29

Microsoft Access 是一个关系数据库,它由一系列表组成,而表又由一系列行和列组成,每行是一条记录,每列都是一个字段,每个字段都有一个字段名,字段名称不能在表中重复。 图 1 显示了“产品”表的示例。 “产品”表由 10 条记录组成,一条记录占一行,每条记录由 6 个字段组成:产品 ID、产品名称、库存数量、订单数量、单价和折扣率。 >>>More

10个回答2024-06-29

我没有尝试过,但应该可以,从数据中找到值,返回一个数据表,然后遍历该值并将其复制到另一个文本中。

5个回答2024-06-29

1.找到你的MySQL的安装目录并打开它,如果它是Linux服务器,那就是; >>>More