SELECT
logcount, logUserID, maxlogtm,
DATEDIFF(day, maxlogtm, GETDATE()) AS daysdiff
FROM statslogsummary
WHERE ( DATEDIFF(day, maxlogtm, GETDATE() > 120)
Biasanya Anda tidak dapat merujuk ke alias bidang di WHERE ayat. (Anggap saja sebagai keseluruhan SELECT termasuk alias, diterapkan setelah WHERE klausa.)
Tetapi, seperti yang disebutkan dalam jawaban lain, Anda dapat memaksa SQL untuk memperlakukan SELECT untuk ditangani sebelum WHERE ayat. Ini biasanya dilakukan dengan tanda kurung untuk memaksa urutan operasi logis atau dengan Common Table Expression (CTE):
Tanda kurung/Subpilih:
SELECT
*
FROM
(
SELECT
logcount, logUserID, maxlogtm,
DATEDIFF(day, maxlogtm, GETDATE()) AS daysdiff
FROM statslogsummary
) as innerTable
WHERE daysdiff > 120
Atau lihat jawaban Adam untuk versi CTE yang sama.