L'errore 1054 è dovuto al fatto che la colonna non esiste nelle tabelle definite in FROM
clausola. Inoltre, il WHERE
La clausola non viene utilizzata per impostare una variabile o un alias di colonna:serve per filtrare le righe restituite.
Usa DATEDIFF :
SELECT t.member_id,
DATEDIFF(LEAST(NOW(), t.membership_dueday), t.membership_startdate) / 30
FROM MEMBERSHIP t
Il LEAST
funzione restituirà la più bassa delle due date, quindi utilizzerà la data corrente se la data di scadenza è futura. Puoi usare il GREATEST
funzione se vuoi che sia invertito.