私が使用しているデータベースが大幅に大きくなっている (そして拡大し続ける) ため、より効率的な方法でクエリを実行しようとしている非常に若い学習者です。
基本的に、2 つのテーブル (パートナーとメモ) があり、顧客の連絡先情報と、発信された通話に対応するメモを保存します。データベースがはるかに小さかったとき、以下のクエリは必要な目的のためにうまく機能しました. しかし、データベースが大幅に拡張された現在、クエリ時間が非常に長くかかり、多くの場合タイムアウトになっています。このクエリを実行するためのより効率的な方法があるかどうか疑問に思っていました:
SELECT * FROM
(SELECT
partners.objectid,
partners.partner,
notes.note,
notes.datecreated,
notes.timecreated
FROM
notes
JOIN
partners
ON
notes.partnerid=partners.objectid
WHERE
partners.province
=
'BC'
AND
partners.type
=
'2'
ORDER BY
notes.datecreated DESC, notes.timecreated DESC) as noteq
GROUP BY
partner
ORDER BY
datecreated ASC, timecreated ASC
LIMIT 1
基本的に、クリックするとデータベース内の既存の最も古いメモを検索し、そのメモに関連付けられた顧客を返すボタンがあります。他に提供できる情報があれば、お知らせください。よろしくお願いします...