********のセットからの最後の日*********EDITED記録
を取得することは基本的に私は最終的に探していますが、犬が私たちにあった最後のアポイントメントでありますその予定の詳細を持つ店。ご存知のように、今私はちょうど一年を通して実際に予約されている顧客を持っているMAXの日付を引っ張っているので、私は彼らの最後の予約を得ていませんが、将来の予約は予約されています。
SELECT dbo_Pet.petId,
dbo_Pet.petName,
dbo_Customer.cstLName,
dbo_vwApptGrid.aptDate,
dbo_vwApptGrid.aptId,
dbo_vwApptGrid.GroomStyle,
dbo_vwApptGrid.StatusDescr
FROM (dbo_Customer RIGHT JOIN dbo_Pet ON dbo_Customer.[cstId] = dbo_Pet.[petCustId])
LEFT JOIN dbo_vwApptGrid ON dbo_Pet.petId = dbo_vwApptGrid.aptPetId
WHERE (((dbo_Pet.petId)=[ID])
AND ((dbo_vwApptGrid.aptDate)<=Date())
AND ((dbo_vwApptGrid.aptDate)=(SELECT Max(tMax.aptDate)
FROM dbo_vwApptGrid As tMax
WHERE tMax.aptPetId = dbo_Pet.petId)));
は全くレコードを表示しません。今日よりも大きい日付に変更すると、最後に予約された予定が表示されるようになります。 なぜ、これは私の最大日付を今日よりも少なくするのですか?
AptID、GroomStye、StatusDescrフィールドを削除します。レコード全体を参照する必要がある場合は、http://allenbrowne.com/subquery-01.html#TopN – June7
@ June7を確認してください。問題は解決しましたが、私の質問を編集しました。そしてそのリンクに感謝!私はそれをチェックしてきた、素晴らしい。そこから本当に役立つ外見のリンクがありました。本当にありがとう。 –
HAVINGではなく、WHERE aptDate <= Date()を試してください。 – June7