Jesper TMedlem sedan nov. 20017 144 inlägg Jag har en kolumn i min mySql-databas som heter start_grade1 där jag lagrar startåret för första klass.
Alltså började man första klass 2009 så skall resultatet nu bli "Klass 2".
Men man skall även kunna visa köföräldrar så start_grade1 skall även kunna vara ex. 2013 vilket då skall bli "Klass -3" (alltså börjar om tre år)
Detta borde väl inte vara så svårt, men kör jag denna sql:
SELECT (year(CURRENT_DATE())-start_grade1)+1 'Klass' FROM tbl;
Så blir resultatet "18446744073709551615" om startåret är 2012...
Hur tänker jag här...?
Vad är start_grade1 för typ? Är de lagrade värdena vettiga?
Jesper TMedlem sedan nov. 20017 144 inlägg Typen är "YEAR", testade också datediff, funkade inte. Men denna verkar funka.
floor(PERIOD_DIFF(year(current_date()),start_grade1)+1)
Är ditt startår i klass ett, 2010 så blir resultatet 1
Är ditt startår i klass ett, 2012 så blir resultatet -1
Detta stämmer ju så långt.
Men jag vill ju att detta skall vara "terminsbundet" och inte "årsbundet", för att man går ju fortfarande i klass ett efter årsskiftet...