Einzelnen Beitrag anzeigen

Benutzerbild von dataspider
dataspider

Registriert seit: 9. Nov 2003
Ort: 04539 Groitzsch
1.350 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Jahrestage berechnen

  Alt 31. Mär 2014, 20:54
Hi,

ich habe dafür eine SP in der Firebird DB:

Code:
create or alter procedure get_age (
    geb_datum date$,
    datum date$ = null)
returns (
    result smallint$)
as
begin
  result = null;
  if (:geb_datum is not null) then
  begin
    if (:datum is null) then
      datum = current_date;
    result = extract(year from :datum) - extract(year from :geb_datum);
    -- wenn Tag erst noch kommt, dann minus 1
    if (extract(month from :geb_datum) >= extract(month from :datum)) then
    begin
      if (extract(month from :geb_datum) > extract(month from :datum)) then
        result = :result - 1;
      else
        if (extract(day from :geb_datum) > extract(day from :datum)) then
          result = :result - 1;
    end
  end
  suspend;
end
Wobei date$ und smallint$ Domains sind.

Dann kannst du mit:
select result from get_age(geb_datum) das Alter ermitteln.

Frank
Frank Reim
  Mit Zitat antworten Zitat