我目前正在試圖優化在VB格式一些SQL查詢(古代的,我知道),但我只是試圖讓查詢更有效。 這是怎樣的一些疑問,現在一個例子:目前試圖優化SQL查詢
SELECT DISTINCT Appointments.WithID, Users.LastName, Users.FirstName
FROM Appointments INNER JOIN AppointmentTypes ONAppointmentTypes.ID =
Appointments.AppTypeID
INNER JOIN Users ON Users.ID = Appointmens.WithID
WHERE Appointments.Hide = 0
ORDER BY Users.LastName, Users.FirstName
以上是運行,那麼對於所有的結果,這一般是返回Appointments.WithID,A每個循環發生的初始查詢每個地方的另一個查詢運行,例如以下項目:
SELECT Appointments.CustomerID FROM Appointments
WHERE Appointments.Hide = 0
AND Appointments.WithID = (And this is where the "Appointment.WithID's
from the previous query are entered)
所以我不知道如果我解釋這個正確或沒有,但所有的一切,第二個查詢運行了多次針對每個Appointment.WithID這是從第一個查詢中找到的。我需要一種方法,可以將第二個查詢合併到第一個查詢中,以便它不會運行第二個查詢數百次,具體取決於返回的WithID的數量。
添加appointments.customerId到第一查詢。 –
僅僅包括客戶ID成'SHOW CREATE TABLE Appointments'第一查詢 –
後的結果。創建一些示例數據和預期結果。 –