pb UPDATE et IF(,,) - SQL/NoSQL - Programmation
Marsh Posté le 09-05-2007 à 13:06:51
Avec quelle base de données ?
Si c'est avec Oracle, il faudrait essayer avec DECODE plutôt que IF.
Pour ne rien faire, une technique habituelle consiste à remettre la même chose :
date_first_dl=IF(tracks_is_dl<>'yes', '06-06-2007', date_first_dl)
Marsh Posté le 09-05-2007 à 14:39:27
olivthill a écrit : Avec quelle base de données ? |
MySQL pardon j'ai pas précisé
Ta technique je l'ai essayée ça me sempble ne pas marcher... (normal puisque même mon premier exemple ne marche pas)
Marsh Posté le 09-05-2007 à 15:47:44
chais pas, mais le if renvoit rien, donc l'affectation ne marche pas je pense. Tu peux pas coller un return ou un truc comme ca ?
Marsh Posté le 09-05-2007 à 16:02:11
question: tu souhaites mettre à jour tous les enregistrements de ta base, en leur mettant à tous track_is_dl à 'yes' et en changeant la date si track_is_dl n'était pas à yes.
C'est bien ça?
Si oui, est-ce que la simple requête suivante ne te suffirait pas:
Code :
|
Marsh Posté le 09-05-2007 à 16:04:20
anapajari a écrit : question: tu souhaites mettre à jour tous les enregistrements de ta base, en leur mettant à tous track_is_dl à 'yes' et en changeant la date si track_is_dl n'était pas à yes.
|
Effectivement
De plus, vous avez bien sûr remarqué que j'avais inversé la date
Marsh Posté le 09-05-2007 à 12:15:44
hello tous,
voilà ma requete :
à la suite de ça, "tracks_is_dl" est bien changé, mais pas "date_first_dl" qui reste à '00-00-0000'...
Pourquoi ?
2e question : je ne voudrais updater l'un les champ que si une condition est vérifiée.
Par ex, dans la requete précédente, je voudrais mettre toujours "tracks_is_dl" à 'yes', mais ne modifier "date_first_dl" QUE SI "tracks_is_dl" est à 'no' (avant d'etre mis à yes bien sur)
Je sais aps si je m'exprime bien. Une sorte de :
Bien sur ça marche pas ce genre de truc.
Message édité par theredled le 09-05-2007 à 12:16:12
---------------
Contes de fées en yaourt --- █ --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique