Oracle
 sql >> Base de données >  >> RDS >> Oracle

Oracle 11g - Boucle FOR qui insère uniquement les jours de la semaine dans une table ?

Vous pouvez toujours vérifier le jour de la semaine avant d'insérer la ligne (les noms des jours de la semaine dépendront de vos paramètres NLS, ce n'est donc pas la solution la plus robuste possible)

 BEGIN
  FOR i IN 1..365 LOOP
    IF( to_char(sysdate-1+i,'fmDAY') NOT IN ('SATURDAY', 'SUNDAY') )
    THEN
      INSERT INTO MY_TABLE (ID, MY_DATE)
        VALUES (i, (to_date(sysdate,'DD-MON-YY')-1)+i);
    END IF;
  END LOOP;
 END;