Requet select

debutant71 Messages postés 52 Date d'inscription dimanche 19 octobre 2014 Statut Membre Dernière intervention 17 juillet 2015 - Modifié par jordane45 le 12/02/2015 à 21:53
debutant71 Messages postés 52 Date d'inscription dimanche 19 octobre 2014 Statut Membre Dernière intervention 17 juillet 2015 - 30 mars 2015 à 13:18
Bonjour,
Je voudrai savoir comment faire pour récupérer les dates d'entrée par rapport a la quantité en stock.
Exemple j'ai 30 article en stock 20 qui sont entrée le 01.02.2015 et 10 le 12.02.2015 alors j'arrive a récupéré les données avec les date d'entrée sauf qu'il me récupére toute les dates ce qui me fait plus de 7000 lignes au lieu de 1000.
Select UNIQUE s.no_art
         ,no_art_new
         ,art_descr
         ,casier
         ,pmp
         ,qte_stock
         ,qte_res_ate
         ,qte_res_mag
         ,genre
         ,date_min_dlc
         ,appro_date
         ,appro_qte
         ,appro_pa 
FROM stoc_r S
         ,laa_r L  
WHERE S.no_art = L.no_art 
AND QTE_STOCK > '0' 
ORDER BY appro_date DESC "


EDIT : Remise en forme de la requête pour plus de lisibilité

23 réponses

jordane45 Messages postés 38142 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 avril 2024 344
12 févr. 2015 à 21:55
Bonjour,

si ton but est de récupérer les entrées d'une date précise par exemple... il suffit d'ajouter une condition dans ton where..

par exemple :
AND appro_date = '2015-02-01'


Si tu veux dans une période.. tu peux utiliser un BETWEEN...
AND appro_date BETWEEN  '2015-02-01' AND  '2015-02-15'


0
debutant71 Messages postés 52 Date d'inscription dimanche 19 octobre 2014 Statut Membre Dernière intervention 17 juillet 2015
12 févr. 2015 à 23:37
Merci pour ta réponse
mais si je fait comme ça je suis oblige de modifier mon code a chaque fois,je voudrai que ça le fasse automatiquement a chaque fois que je fais ma requete.j'ai chercher mais j'ai du mal avec la requete select.
0
jordane45 Messages postés 38142 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 avril 2024 344
13 févr. 2015 à 00:30
où est le souci ?
Il te suffit de mettre tes variables dans la requête......

Qu'as tu essayé de faire ?
Quel code as tu tenté ?
Sur quoi bloques tu exactement ?

Sans ces réponses... personne ne pourra te venir en aide....
0
jordane45 Messages postés 38142 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 avril 2024 344
Modifié par jordane45 le 13/02/2015 à 00:31
Si ton souci c'est ... comment passer une variable... il suffit de faire une concaténation ...
" // le reste de ta requete...
AND appro_date = '" & Tavariable & "'"

0
debutant71 Messages postés 52 Date d'inscription dimanche 19 octobre 2014 Statut Membre Dernière intervention 17 juillet 2015
13 févr. 2015 à 12:59
Quand je mais comme ça j'ai une erreur.

 cmd.CommandText = "Select UNIQUE s.no_art
,no_art_new
,art_descr
,casier
,pmp
,qte_stock
,qte_res_ate
,qte_res_mag
,genre
,date_min_dlc
,appro_date
,appro_qte
,appro_pa 
FROM stoc_r S
,laa_r L  
WHERE S.no_art = L.no_art 
AND QTE_STOCK > '0' 
AND appro_date BETWEEN '2015-02-01' AND '2015-02-15' 

ORDER BY appro_date DESC "


literal does not match format string
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
Modifié par ucfoutu le 13/02/2015 à 13:12
Bonjour",
"mais"' ?? Où est donc l'opposition, l'exception, ou la différence qu'induit cet adverbe ?
Je ne la vois pas.

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviend
0
debutant71 Messages postés 52 Date d'inscription dimanche 19 octobre 2014 Statut Membre Dernière intervention 17 juillet 2015
Modifié par debutant71 le 13/02/2015 à 13:27
Désolé pour les fautes
Alors j'ai pas compris ta réponse
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
13 févr. 2015 à 15:11
Bref ...
Ni '2015-02-01' , ni '2015-02-15' ne sont des dates (ce sont des chaînes de caractères).
Si ton champ appro_date est déclaré en champ de type Date,, ces chaînes de caractères doivent bien évidemment être transformées en dates.
0
debutant71 Messages postés 52 Date d'inscription dimanche 19 octobre 2014 Statut Membre Dernière intervention 17 juillet 2015
13 févr. 2015 à 23:46
Je sais j'en demande beaucoup mais comment on fait
si vous avez un exemple.
0
cs_ShayW Messages postés 3253 Date d'inscription jeudi 26 novembre 2009 Statut Membre Dernière intervention 3 décembre 2019 57
Modifié par cs_ShayW le 15/02/2015 à 20:37
Bonsoir

WHERE S.no_art = L.no_art 
AND QTE_STOCK > '0'
AND appro_date BETWEEN '2015-02-01' AND '2015-02-15'


QTE_STOCK est defini comme string ?


AND appro_date BETWEEN '2015-02-01' AND '2015-02-15'
ce n'est pas plutôt
AND (appro_date = '2015-02-01') OR ( appro_date = '2015-02-15') 
0
debutant71 Messages postés 52 Date d'inscription dimanche 19 octobre 2014 Statut Membre Dernière intervention 17 juillet 2015
Modifié par debutant71 le 15/02/2015 à 23:50
Bonsoir,
quand je mais comme ça J'ai une erreur
AND (appro_date = '2015-02-01') OR (appro_date = '2015-02-15')

J'ai essayer de plusieurs façon mais avec cette façon j'ai une erreur mois non valide
AND appro_date = '2015-02-01'

pour l'instant je ne le fait pas avec des variables je voudrai d'abord corriger le problème et après je ferai en sorte qu'il prenne mes références comme je l'ai mis au début (Exemple j'ai 30 article en stock 20 qui sont entrée le 01.02.2015 et 10 le 12.02.2015 de la même référence).
oui QTE_STOCK est défini comme string.
c'est une base oracle je ne sais si ça change quelque chose.
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
Modifié par ucfoutu le 16/02/2015 à 06:36
Tu n'as tenu aucun compte de ce que je t'ai dit plus haut, à savoir :
Si ton champ appro_date est déclaré en champ de type Date,, ces chaînes de caractères doivent bien évidemment être transformées en dates.

Avec Oracle, dis-tu ? ===>>>
http://psoug.org/snippet/Oracle-PL-SQL-BETWEEN-Condition_750.htm

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviend
0
debutant71 Messages postés 52 Date d'inscription dimanche 19 octobre 2014 Statut Membre Dernière intervention 17 juillet 2015
16 févr. 2015 à 23:35
Bonsoir,
j'ai réussi en faisant comme ça
appro_date = to_date('13/02/2015','DD/MM/YYYY')

merci de votre aide.
je ne clos pas la discussion car j'aurai d'autre question à vous poser sur comment récupérer les dates d'appro qui sont égal au quantités en stock je cherche et je reviens vers vous si je ne trouve pas.
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
16 févr. 2015 à 23:51
comment récupérer les dates d'appro qui sont égal au quantités en stock

Pardon ?
Des dates seraient maintenant égales à des quantités ?
Euh .....
0
debutant71 Messages postés 52 Date d'inscription dimanche 19 octobre 2014 Statut Membre Dernière intervention 17 juillet 2015
17 févr. 2015 à 00:03
je me suis mal exprimer.
je voudrai récupéré les qte_stock = au date appro
dans qte_stock je peut avoir 20 en stock dont 15 entrée le 12.12.2014 et 5 le 16.02.2015 .Alors peut-être qu'on ne peut pas faire comme ça, je sais pas.
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
17 févr. 2015 à 07:35
j'ai vraiment des difficultés à comprendre tes expressions.
1) tes "=" voudraient-ils finalement dire "correspondant à " ?
2) si oui : explique clairement ce que tu as écrit plus haut :
dates d'appro qui sont égal au quantités en stock

car même en essayant de traduire, on arriverait à ceci :
dates d'appro qui correspondent au quantités en stock

qui reste un vrai petit mystère.
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviend
0
cs_ShayW Messages postés 3253 Date d'inscription jeudi 26 novembre 2009 Statut Membre Dernière intervention 3 décembre 2019 57
Modifié par cs_ShayW le 17/02/2015 à 11:09
je me suis mal exprimer.
je voudrai récupéré les qte_stock = au date appro

Avant donc que d'écrire, apprenez à penser.
Ce que l'on conçoit bien s'énonce clairement,
Et les mots pour le dire arrivent aisément.
Hâtez-vous lentement, et sans perdre courage,
Vingt fois sur le métier remettez votre ouvrage,
Polissez-le sans cesse, et le repolissez,
Ajoutez quelquefois, et souvent effacez.

Boileau, L'Art poétique


tu as écrit
j'ai réussi en faisant comme ça
appro_date = to_date('13/02/2015','DD/MM/YYYY')


Qu'as tu réussi ?
0
debutant71 Messages postés 52 Date d'inscription dimanche 19 octobre 2014 Statut Membre Dernière intervention 17 juillet 2015
17 févr. 2015 à 13:39
j'ai dit j'ai réussi parce que avant je ne n'arrive pas à récupéré avec la date d'appro j'avais toujours une erreur je n'arrive pas à faire comme disais ucfoutu,c'est pour un logiciel de dépréciation de stock
Maintenant le truc c'est que je que quand je récupére mon stock il me récupére toutes les dates d'appro pour la même référence.

comme la je voudrai qu'il ne me récupére que la premiere ligne car ma quantité stock est égal ou inférieur à quantité appro.
0
cs_ShayW Messages postés 3253 Date d'inscription jeudi 26 novembre 2009 Statut Membre Dernière intervention 3 décembre 2019 57
17 févr. 2015 à 14:35
comme la je voudrai qu'il ne me récupére que la premiere ligne car ma quantité stock est égal ou inférieur à quantité appro.


tu n'as pas que la première ligne !
0
debutant71 Messages postés 52 Date d'inscription dimanche 19 octobre 2014 Statut Membre Dernière intervention 17 juillet 2015
17 févr. 2015 à 23:01
Bonsoir,
justement pour cette référence je voudrai qu'il ne me récupére que la première ligne,il ne faut pas prendre en compte les autres lignes car j'ai fait une boucle dans le datagridview c'est pour ça qu'il m'affiche toujours la même quantité en stock.Par exemple pour cette référence j'en ai 60 en stock qui font parti des 120 entrée le 30/12/2014 et non des autres entrée
0
cs_ShayW Messages postés 3253 Date d'inscription jeudi 26 novembre 2009 Statut Membre Dernière intervention 3 décembre 2019 57
17 févr. 2015 à 23:30
montre la requête que tu as dit avoir réussi avec la date
0
debutant71 Messages postés 52 Date d'inscription dimanche 19 octobre 2014 Statut Membre Dernière intervention 17 juillet 2015
17 févr. 2015 à 23:45
J'ai réussi à faire pour rechercher avec la date du jour même donc maintenant je suis en train de faire pour essayer de récupéré comme je t'ai expliquer. Alors je voudrai savoir si c'est possible de le faire dans la requête ou il faut le faire le tri une fois que j'ai tout récupéré dans mon dataset.
Pour l'instant je n'ai que ça je suis en train de chercher comment faire.
AND QTE_STOCK > '0' AND appro_date = to_date('" & date1 & "','DD/MM/YYYY') ORDER BY appro_date DESC"
0
cs_ShayW Messages postés 3253 Date d'inscription jeudi 26 novembre 2009 Statut Membre Dernière intervention 3 décembre 2019 57
18 févr. 2015 à 09:24
Je ne sais pas si tu te rends compte c'est incompréhensible !!
On va peut être arrivé à comprendre
Ta question initial est

Je voudrai savoir comment faire pour récupérer les dates d'entrée par rapport a la quantité en stock.

je n'ai pas compris ce que tu cherches à faire
Tu veux récupérer les dates d'entrée ?
que représente stoc_r et laa_r ?
0
Rejoignez-nous