mysql innoDB
SELECT
toj.id,
toj.errormsg,
tuser.`name` opname,
tcompany.shortName,
tr.orderNum japanNumber,
tr.sendvisanum,
tr.`status` orderstatus,
tr.comshortname,
tc.shortname customershotname,
toj.acceptDesign number,
DATE_FORMAT(tr.sendVisaDate, '%Y-%m-%d') sendingTime,
DATE_FORMAT(tr.outVisaDate, '%Y-%m-%d') signingTime,
tr.STATUS japanState,
(
SELECT
count(*)
FROM
t_applicant_order_jp
WHERE
orderId = toj.id
) peopleNumber,
tr.isDisabled,
tr.zhaobaocomplete,
tr.zhaobaoupdate,
toj.visastatus visastatus,
toj.visaType,
toj.acceptDesign,
tr.id orderid
FROM
t_order tr
INNER JOIN t_order_jp toj ON toj.orderId = tr.id
LEFT JOIN t_company tcom ON tr.comId = tcom.id
LEFT JOIN t_company tcompany ON toj.sendsignid = tcompany.id
LEFT JOIN t_user tuser ON tr.salesOpid = tuser.id
LEFT JOIN t_customer tc ON tr.customerId = tc.id
WHERE
(tr.orderNum LIKE '%贾%'
OR
tc.linkman LIKE '%贾%'
OR
tc.mobile LIKE '%贾%'
OR
tc.email LIKE '%贾%'
OR
(SELECT
GROUP_CONCAT(CONCAT(ta.firstName,ta.lastName) SEPARATOR 'төл') applyname
FROM
t_applicant ta
INNER JOIN t_applicant_order_jp taoj ON taoj.applicantId = ta.id
LEFT JOIN t_order_jp toj ON taoj.orderId = toj.id
LEFT JOIN t_order tor ON toj.orderId = tor.id
WHERE
tor.id = tr.id
GROUP BY toj.orderId) LIKE '%贾%'
OR
toj.acceptDesign LIKE '%贾%'
OR
(SELECT tap.passport
FROM
t_applicant ta INNER JOIN t_applicant_order_jp taoj ON taoj.applicantId = ta.id
LEFT JOIN t_applicant_passport tap ON tap.applicantId = ta.id
LEFT JOIN t_order_jp toj ON taoj.orderId = toj.id
LEFT JOIN t_order tor ON toj.orderId = tor.id
WHERE
tor.id = tr.id GROUP BY toj.orderId) LIKE '%贾%')
AND
(tr.createTime BETWEEN '2019-03-18 00:00:00' AND '2019-03-21 23:59:59')
AND
(tr.status=1 AND tr.isDisabled=0)
AND
(toj.visatype=1)
AND tr.comId=67
ORDER BY tr.isDisabled ASC, tr.updatetime DESC, tr.id DESC;
t_order数据量二十万左右的时候查询需要18S左右,请问有什么优化方向吗