SQL functie Week (DateTime) niet beschikbaar

Ik probeer in de Invantive Query tool:

Select Week (DateTime)

te gebruiken, maar ik krijg de melding dat Invantive SQL het commando week niet kent. Op zich vreemd aangezien het een standaard MySQL commando is.

Year(DateTime) en Month(DateTime) werken wel.

Enig idee hoe ik dat wel kan gebruiken?

Invantive SQL bevat op dit moment bewust geen SQL functie voor de MySQL functie week. Probleem is dat de weeknummering nogal veel varianten kent, zoals ook blijkt uit de toelichting in de MySQL documentatie voor de waarde van mode.

Er is voor gekozen om twee methodes aan te bieden:

  • het ISO8601 weeknummer, bijvoorbeeld op te vragen via een van de volgende maskers bij to_char op een datum: iw, yyyyiw of yyyy-iw.
  • het weeknummer uit te rekenen t.o.v. een peildatum.

ISO8601 weeknummer

Een voorbeeld van het weeknummer met to_char en omzetting naar een getal is bijvoorbeeld:

select to_number(to_char(sysdateutc, 'IW'))

Hou er rekening mee dat de ISO-weeknummering soms onverwacht kan uitpakken afhankelijk van het doel.

Weeknummer t.o.v. peildatum

Het aantal weken sinds een datum kan ook bepaald worden met bijvoorbeeld:

select ceil((date1 - date2) / 7)

Merk op dat bijvoorbeeld date_floor met als argument een datum ook een precisie "week" kent die een datum afrondt op een week.

Meer informatie over Invantive SQL is te vinden in de grammatica.