A voir également:
- {MySQL} Sélection d'une liste de prix entre d
- Liste déroulante excel - Guide
- Gta 6 prix - Guide
- Prix windows 10 - Guide
- Liste de diffusion whatsapp - Guide
- Liste déroulante en cascade - Guide
12 réponses
aymenrafik@yahoo.fr
Messages postés
16
Date d'inscription
mardi 21 juillet 2009
Statut
Membre
Dernière intervention
4 août 2009
4
4 août 2009 à 15:15
4 août 2009 à 15:15
tu cehrche a faire une requete sur le critere date?
Bonjour et merci,
Oui sur le critère date et sur l'unicité du produit. En fait le tarif de certains produits peut varier dans le temps en fonction de la saisonnalité.
Oui sur le critère date et sur l'unicité du produit. En fait le tarif de certains produits peut varier dans le temps en fonction de la saisonnalité.
aymenrafik@yahoo.fr
Messages postés
16
Date d'inscription
mardi 21 juillet 2009
Statut
Membre
Dernière intervention
4 août 2009
4
4 août 2009 à 15:47
4 août 2009 à 15:47
Bon j'ai du mal a comprendre
1-c'est quoi tes clefs primaires?
2-tu cherche le prix connaissant la date et le produit?ou juste la date et tu cherche tt les produit qui ont un prix valide a la date recherché?
1-c'est quoi tes clefs primaires?
2-tu cherche le prix connaissant la date et le produit?ou juste la date et tu cherche tt les produit qui ont un prix valide a la date recherché?
aymenrafik@yahoo.fr
Messages postés
16
Date d'inscription
mardi 21 juillet 2009
Statut
Membre
Dernière intervention
4 août 2009
4
4 août 2009 à 15:55
4 août 2009 à 15:55
pk t'utilise datediff??
a tu essayé symplemant
SELECT code_produit, date_debut, date_fin, , prix
FROM catalogues
WHERE
sysdate
BETWEEN date_debut
AND date_fin
si ca ne marche pas ca devrai venir du format utilisée pour les date
dans ce cas la utilise to_date
a tu essayé symplemant
SELECT code_produit, date_debut, date_fin, , prix
FROM catalogues
WHERE
sysdate
BETWEEN date_debut
AND date_fin
si ca ne marche pas ca devrai venir du format utilisée pour les date
dans ce cas la utilise to_date
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Si j'utilise ta requete, je me retrouve avec 2 résultats pour le produits 1235
Or je n'en veux qu'un, celui dont la date de début est le plus proche de la date du jour.
Or je n'en veux qu'un, celui dont la date de début est le plus proche de la date du jour.
aymenrafik@yahoo.fr
Messages postés
16
Date d'inscription
mardi 21 juillet 2009
Statut
Membre
Dernière intervention
4 août 2009
4
4 août 2009 à 16:25
4 août 2009 à 16:25
ah ok je voie mainteant!
essaye ca :
SELECT code_produit, date_debut, date_fin, , prix
FROM catalogues
WHERE
sysdate
BETWEEN date_debut
AND date_fin
order desc by date_debut
en ajoutant une condition pour sélectionner que la première ligne des résultat je l'ai déjà utilisé mais je m'en rappel plus...
essaye ca :
SELECT code_produit, date_debut, date_fin, , prix
FROM catalogues
WHERE
sysdate
BETWEEN date_debut
AND date_fin
order desc by date_debut
en ajoutant une condition pour sélectionner que la première ligne des résultat je l'ai déjà utilisé mais je m'en rappel plus...
aymenrafik@yahoo.fr
Messages postés
16
Date d'inscription
mardi 21 juillet 2009
Statut
Membre
Dernière intervention
4 août 2009
4
4 août 2009 à 16:36
4 août 2009 à 16:36
voila ca me revien :)
c'est ROWNUM !!
=>SELECT code_produit, date_debut, date_fin, , prix
FROM catalogues
WHERE
sysdate
BETWEEN date_debut
AND date_fin
where rownum<=1
order desc by date_debut
c'est ROWNUM !!
=>SELECT code_produit, date_debut, date_fin, , prix
FROM catalogues
WHERE
sysdate
BETWEEN date_debut
AND date_fin
where rownum<=1
order desc by date_debut
ça c'est bon pour oracle.
En mysql c'est "limit 1"
Mais, il ne faut pas qu'il me prenne un seul enregistrement.
Il me faut effectivement 1 seule ligne par produit, mais tout le catalogue tout de même.
En mysql c'est "limit 1"
Mais, il ne faut pas qu'il me prenne un seul enregistrement.
Il me faut effectivement 1 seule ligne par produit, mais tout le catalogue tout de même.
Pardon, je n'ai pas été clair, je le vois.
Oui, je veux tous les prix valides aujourd'hui et un seul prix valide par produit.
Oui, je veux tous les prix valides aujourd'hui et un seul prix valide par produit.
La solution que j'ai trouvé est de passer par 2 requêtes imbriquées et en prenant les écarts entre la date du jour et la date de début de catalogue
Et ça marche
Merci pour l'aide
SELECT code_produit, prix (SELECT code_produit, MIN(DATEDIFF(curdate(), date_debut)) AS mini FROM catalogues WHERE ( CURDATE( ) BETWEEN date_debut AND date_fin OR CURDATE( ) >= date_debut AND date_fin = '0000-00-00') GROUP BY code_produit) AS catalogues_filtre ON catalogues.code_produit = catalogues_filtre.code_produit WHERE catalogues.code_produit = catalogues_filtre.code_produit AND mini = DATEDIFF(curdate(), date_debut)
Et ça marche
Merci pour l'aide