In case you have your own slow SQL query, you can optimize it automatically here.
For the query above, the following recommendations will be helpful as part of the SQL tuning process.
You'll find 3 sections below:
ALTER TABLE `Bankdetails` ADD INDEX `bankdetails_idx_accno_accname_opbal` (`accno`,`accname`,`opbal`);
ALTER TABLE `Trandetails` ADD INDEX `trandetails_idx_trantype_accno` (`Trantype`,`accno`);
ALTER TABLE `Trandetails` ADD INDEX `trandetails_idx_accno` (`AccNo`);
SELECT
bd.accname,
bd.accno,
(bd.opbal - isnull((SELECT
SUM(Trandetails.Amount)
FROM
Trandetails
WHERE
Trandetails.Trantype = 'Debit'
AND Trandetails.accno = bd.accno
GROUP BY
Trandetails.accno
ORDER BY
NULL),
0) + isnull((SELECT
SUM(Trandetails.Amount)
FROM
Trandetails
WHERE
Trandetails.Trantype = 'Credit'
AND Trandetails.accno = bd.accno
GROUP BY
Trandetails.accno
ORDER BY
NULL),
0)) AS Bal
FROM
Bankdetails BD
WHERE
(
EXISTS (
SELECT
1
FROM
Trandetails TD
WHERE
td.AccNo = bd.AccNo
)
)
GROUP BY
bd.accno,
bd.accname,
bd.opbal
ORDER BY
NULL