gpt4 book ai didi

mysql - 优化查询

转载 作者:搜寻专家 更新时间:2023-10-30 20:52:58 26 4
gpt4 key购买 nike

我创建了一个 vert 诊所的数据库。该 DB 包含表:Drug (code)、Animal(id)、Prescription (id_animal、code_drug、start_date、end_date)。我必须优化这个查询,因为它很慢,但我不知道如何:

      SELECT D.Code, P.Administration, P.End_date

FROM Drug D, Prescription P, Animal A

WHERE P.Id_animal = A.Id AND P.Code_drug = D.Code AND A.id = 3 AND (P.End_date >= CURDATE() OR P.End_date IS NULL)

ORDER BY P.End_date;

最佳答案

我会使用内连接而不是交叉连接来重新处理您的查询:

select d.code,
p.administration,
p.end_date
from drug as d
inner join prescription as p
on d.code = p.code_drug
inner join animal as a
on p.id_animal = a.id
where p.end_date >= curdate()
or p.end_date is null

您也很有可能需要对表进行适当的索引,但如果不了解表的结构以及它们的确切创建方式,则很难判断。

关于mysql - 优化查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35324779/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com