sql >> Database >  >> RDS >> Mysql

proberen om het aantal maanden te krijgen

De 1054-fout is omdat de kolom niet bestaat in de tabel(len) gedefinieerd in de FROM clausule. Bovendien is de WHERE clausule wordt niet gebruikt om een ​​variabele of kolomalias in te stellen -- het is voor het filteren van geretourneerde rijen.

Gebruik DATEDIFF :

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

De MINSTE functie retourneert de laagste van de twee datums, dus het zal de huidige datum gebruiken als de vervaldatum in de toekomst ligt. U kunt de GREATEST . gebruiken functie als u dat omgekeerd wilt.




  1. Mysql-database en gebruiker maken in bash-script

  2. Hulp nodig bij het openen van de mysql-database met node.js

  3. bereken een som van typetijd met behulp van sql

  4. Een database selecteren in mysql met spaties in de naam