Insertion d'une date aleatoire [Résolu]

Messages postés
17
Date d'inscription
jeudi 9 novembre 2006
Dernière intervention
26 juin 2008
- - Dernière réponse : sosou80
Messages postés
17
Date d'inscription
jeudi 9 novembre 2006
Dernière intervention
26 juin 2008
- 22 août 2007 à 11:56
bjr ts le monde ,
 voila mon petit prob :
   je viens de creer ds une table un champ pr saisir la date, ce champs s'appel  creationdate.
   cette table contient des milliers des données, ce ke je veu fair c d'inserer la date de creation a      chake ligne ds ce champs ke je viens de créer cad creationdate.

est ce ke ya un moyen d'inserer une date aleatoire ds ttes les lignes de la table, sachant ke cette date ne doit pa depasser la date actuel.???????
car c vraiment dur d'inserer a la main la date pr chake ligne.

et je travail avec sql server 2000

merci bcp pr votre aide
Afficher la suite 

Votre réponse

7 réponses

Meilleure réponse
Messages postés
446
Date d'inscription
vendredi 7 novembre 2003
Dernière intervention
8 octobre 2008
3
Merci
Bonjour,
A améliorer :
select convert(datetime,70000*rand((DATEPART(mm, GETDATE()) * 100000 )
           + (DATEPART(ss, GETDATE()) * 1000 )
           + DATEPART(ms, GETDATE()) ))

Dom

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 106 internautes ce mois-ci

Commenter la réponse de dominique.stock
Messages postés
446
Date d'inscription
vendredi 7 novembre 2003
Dernière intervention
8 octobre 2008
3
Merci
select convert(datetime,36524+(39291-36524)*rand())

Dom

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 106 internautes ce mois-ci

Commenter la réponse de dominique.stock
Messages postés
446
Date d'inscription
vendredi 7 novembre 2003
Dernière intervention
8 octobre 2008
3
Merci
Et même :
select convert(datetime,(
 convert(int,convert(datetime,'01/01/2000'))
 +(
  convert(int,convert(datetime,'30/07/2007'))-convert(int,convert(datetime,'01/01/2000'))
 )
 *rand())
 )

Dom

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 106 internautes ce mois-ci

Commenter la réponse de dominique.stock
Messages postés
446
Date d'inscription
vendredi 7 novembre 2003
Dernière intervention
8 octobre 2008
3
Merci
je te conseille plutôt de transformer
str='123-4588-687-985-365-214-698-874'

replace(str,'-',',')
ainsi
str='123,4588,687,985,365,214,698,874'

et dans ta requête tu fais
'where id in ( '+str+')'

Dom

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 106 internautes ce mois-ci

Commenter la réponse de dominique.stock
Messages postés
17
Date d'inscription
jeudi 9 novembre 2006
Dernière intervention
26 juin 2008
0
Merci
bjr,


merci tt d'abord pr votre reponse c vraiment sympa de votre part.


le code ke vous m'avez forni marche trés bien , mai j'ai un autre prob:
je veux ke cette date soit comprise ds l'interval  2000-01-01====>2007-07-30

comment je peu ameliorer le meme code pr obtenir les resultats souhaités


et merci encore pr tte reponse.
et bne journée


 
Commenter la réponse de sosou80
Messages postés
17
Date d'inscription
jeudi 9 novembre 2006
Dernière intervention
26 juin 2008
0
Merci
meric bcp encore une fois pr cette reponse ,
 les deux codes ca marche trés bien
 ce code a entierement resolu mon prob!!

2 eme prob:
ca fait longtemps ke je cherche  comment décomposer une chaine de caracteres sachant ke cette chaine est passée comme parametres a une procedure stockée.

exemple:
-la chaine de caractere   str='123-4588-687-985-365-214-698-874'
cette chaine est passée comme parametre a une procedure stocké, et au niveau de la procedure stockée .
ce ke je veu faire c de parcourir cette chaine et d'extraire partie par partie et de stocker chaque valeur ds un variable comme suite:
var1=123  , var2=4588,  var3=687 , var4=985, var5=365, var6=214, var7=698, var=874

porkoi ts ca :  ts simplement pr les prendre en consideration ds une clause where
exemple: where  id=var1 or id=var2 or id=var3or id=var4 or id=var5....
 
vous aller me dire porkoi ne pas les fournir directement ds la clause where comme suit:
where id=123 or id=4588....

je ne peu plus faire comme ca car: ces id se change d'une facon dinamique cad: ya pa un nombre fix ca peu varier

c la raison pr la quelle j'aimerai bien ecrire un code genaral ki va traiter cette chaine de caracter et de fournir les valeurs necesaire a la clause where

j'espere ke j'etai clair 
 
peut etre ke c a vous  DOM  de me resoudre ce petit prob bien sur si c votre demaine et si c possible!!!!

merci bcp d'avance pr tte reponse de votre part
 
Commenter la réponse de sosou80
Messages postés
17
Date d'inscription
jeudi 9 novembre 2006
Dernière intervention
26 juin 2008
0
Merci
t'a raison c plus simple ,j pa penser a ca .
j pas encore essayer mai c clair ke ca va marcher ,car c plus raisonable.

merci encore pr ton soutien.
Commenter la réponse de sosou80

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.