Я извлекаю некоторые данные из базы данных WordPress с помощью MySQL Query. Запрос занимает слишком много времени и он просто загружается в phpmyadmin. Мне нужна помощь, чтобы улучшить производительность.
Я выполняю запрос MySQL, который извлекает данные из базы данных WordPress. У меня есть высокопроизводительный сервер с 48 ГБ оперативной памяти и 16-ядерным vcpu. Ниже мой запрос.
select
main.post_author as agent_id,
pt.meta_value as portal,
(
select count(wp_posts.id) from wp_posts
left join wp_postmeta as fdadt ON (wp_posts.id = fdadt.post_id AND fdadt.meta_key in ('hgsc_data_assigned_date','warrantyactivation_data_assigned_date'))
left join wp_postmeta as fdpt ON (wp_posts.id = fdpt.post_id AND fdpt.meta_key in ('hgsc_portal','warrantyactivation_portal'))
where ((date_format(fdadt.meta_value,'%Y-%m-%d') >='2019-07-08') and (date_format(fdadt.meta_value,'%Y-%m-%d') <='2019-07-08'))
and wp_posts.post_author=main.post_author
and fdpt.meta_value=pt.meta_value
and wp_posts.post_type in ('hg-scratch-card','hg-warranty-act')
and wp_posts.post_status='publish'
)
as fresh_data
from wp_posts main
LEFT JOIN wp_postmeta as pt ON (main.id = pt.post_id AND pt.meta_key in ('hgsc_portal','warrantyactivation_portal'))
where
main.post_type in ('hg-scratch-card','hg-warranty-act')
and
main.post_status='publish'
group by agent_id,portal
order by agent_id asc
Мне нужно добавить еще несколько подзапросов. Мне интересно, можно ли улучшить производительность.