sql >> Databasteknik >  >> RDS >> Mysql

försöker få fram antalet månader

1054-felet beror på att kolumnen inte finns i tabellen/tabellerna som definieras i FROM klausul. Dessutom, WHERE sats används inte för att ställa in en variabel eller kolumnalias -- det är för att filtrera rader som returneras.

Använd DATEDIFF :

SELECT t.member_id,
       DATEDIFF(LEAST(NOW(), t.membership_dueday), t.membership_startdate) / 30
  FROM MEMBERSHIP t

MINST funktion returnerar det lägsta av de två datumen, så det kommer att använda det aktuella datumet om förfallodatumet ligger i framtiden. Du kan använda GREATEST funktion om du vill ha det omvänt.




  1. Hur man ställer in en WordPress MySQL-databas i molnet

  2. sqlalchemy.exc.NoSuchModuleError:Kan inte ladda plugin:sqlalchemy.dialects:postgres

  3. Frågan tar timeout från webbappen men körs bra från managementstudio

  4. Hur kan jag göra HTTP-förfrågan från SQL-servern?