Veröffentlicht 27. Juni 200619 j hallo, ich möchte die anzahl monate zwischen 2 daten herausfinden. dafür gibt es ja die nette funktion months_between(date1,date2). wenn die 2 daten nich genau einen monat auseinander liegen bekommt man eine kommazahl zurück. da ich aber nur die zahl vor dem komma braucht, hab ich mir gedacht, dass ich das einfach nur abschneide, und zwar wenn ich das ganze nocheinmal mit to_char bearbeite und ihm ein entsprechendes format übergebe. allerdings wusste ich vorher nicht, dass to_char das ganze dann auch noch rundet. sprich: aus 0,67853 macht er 1 und aus 0,457673 macht er 0. ich will aber die zahl vor dem komma. gibt es irgendeinen befehl, der das runden unterdrückt? ps: mir is schon klar, dass ich das auch mit substr() machen könnte, allerdings zeigt mir oracle nie die 0 vor dem komma an. also erhalte ich beim substr des ersten zeichens ein ',' wenn ich eigentlich eine 0 herauskommen sollte. auch blöd.
27. Juni 200619 j Du suchst glaube ich die FLOOR-Funktion! Probiere mal das: SELECT FLOOR(MONTHS_BETWEEN(TO_DATE('21.07.2006','DD.MM.YYYY'),TO_DATE('21.06.2006','DD.MM.YYYY'))) FROM dual
27. Juni 200619 j Autor kranke sache, das funzt ja ich danke dir vielmals, die funktion kannte ich noch gar nich.
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.