Compléter les lignes manquantes - SQL/NoSQL - Programmation
Marsh Posté le 07-07-2006 à 07:32:16
ou alors rechercher le max(mois) par annee / reference 
et faire une boucle : 
 
De max(mois) -> 1 faire 
     mois = mois -1 
     insert mois 
     si erreur 
        mois existe (gère erreur / ne fais rien)  
     finsi 
fin boucle 
 
ou 
 
De max(mois) -> 1 faire 
     mois = mois -1 
     select mois 
     si n'existe pas  
        insertion mois  pour anne / reference 
     finsi 
fin boucle 
 
Marsh Posté le 07-07-2006 à 08:35:40
Salut, 
 
oui je pense que c'est une bonne idée, est-ce possible ? 
J'avoue que j'arrive à géré quelques trucs avec les variables @, mais pour gérer des enregistrements ligne par ligne, je vois pas trop meme avec les cursor. Si vous aviez des exemples. Je continue d'investiguer de mon coté. 
 
Merci; 
Marsh Posté le 07-07-2006 à 09:24:33
Sinon si tu as pas de réponses dans ce forum 
 
Essaie là => http://www.developpez.com/ 
il y aura des gros balèzes pour te répondre ;-) 
Marsh Posté le 07-07-2006 à 12:08:22
je pense qu'une simple requête sql ferais l'affaire :s 
il suffit de faire plusieurs SELECT imbriqué combiné avec des UNION et tu devrais y arriver.  
 
SELECT * 
FROM (SELECT ... => tout ceux qui existe 
          UNION 
         SELECT ... => tout ceux qui n'existe pas  
        ); 
 
voila mtn à toi de compléter les SELECT  , à mon avis, dans le dernier select, tu aurais encore des imbrications de SELECT.
, à mon avis, dans le dernier select, tu aurais encore des imbrications de SELECT. 
Marsh Posté le 07-07-2006 à 12:10:43
Salut, 
 
oui ca peut etre une bonne idée, mais comment selectionner quelque chose qui n'existe pas ? 
 
Merci.
Marsh Posté le 08-07-2006 à 10:18:10
en ORACLE tu as la table DUAL que tu permets de selectionner quelques choses à partir de rien.
Marsh Posté le 10-07-2006 à 10:23:53
ben je ne sais pas sur SQL SERVER  faut demander au spécialiste SQL SERVER ... Ou tu fais une recherche sur google, suis certain que tu trouveras vite la réponse.
 faut demander au spécialiste SQL SERVER ... Ou tu fais une recherche sur google, suis certain que tu trouveras vite la réponse.
Marsh Posté le 06-07-2006 à 16:47:30
Bonjour,
voila j'ai une base de ce type
En fait je voudrais qu'il me complete les mois manquants jusqu'au mois courant, avec comme valeur la derniere valeur trouvée pour la reférence.
J'aimerais en gros obtenir ca :
Est-ce faisaible ? Si vous avez une méthode.
J'ai regardé un peu du coté du Transact SQL (je suis en SQL SERVER 2000), notamment les CURSOR, mais je ne vois pas comment faire mon test sur ma ligne.
Je pense que pour une ref, il faut dresser la liste des mois présents et ensuite s'il manque un mois (ou +) le(s) générer. Seulement comment faire ce test ?
Merci de votre aide.
Message édité par $man le 06-07-2006 à 16:48:26