Einzelnen Beitrag anzeigen

mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#25

Re: Daten aller Donnerstage im Monat

  Alt 3. Jan 2010, 16:49
Dirty hack:

SQL-Code:
CREATE OR ALTER PROCEDURE WOCHENTAGEEINESMONATS (
    monat smallint,
    wtag smallint,
    jahr integer)
returns (
    datum date)
as
declare variable m smallint;
begin
  select extract( weekday from cast ( :jahr || '.' || :monat || '.01as date)) from rdb$database into :m;
  m = MOD( :wtag + :m - 2, 7);
  while (:m <= 31 /* mit berechneten Maxdatum des Monats ersetzen */) do
  begin
      datum = cast( :jahr || '.' || :monat || '.' || m as date);
      m = :m + 7;
      suspend;
  end
end
Markus Kinzler
  Mit Zitat antworten Zitat