Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1399 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [SQL] Aide à la réalisation d'une simple requête update

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[SQL] Aide à la réalisation d'une simple requête update

n°1805052
Brush653
DEBANNISSEZ BRUNOCREMER
Posté le 27-10-2008 à 16:59:57  profilanswer
 

Bonjour,
 
Mon problème est simple. Je dois modifier le prix de vente de plusieurs produits, situés dans les sous-catégories d'une catégorie commune.
 
Autrement dit, je voudrais:
 
Changer le prix de 59.99 à 69.99 de tous les produits situés sous la catégorie "décoration".
 
Je pensais à qqch comme:
 
Update products
Set products_price = 69.99
WHERE category = decorations
 
Le problème est qu'il y a des sous-cat sous decoration... Contenant des produits qui doivent être modifiés. Ma reqûete modifiera-t-elle uniquement la racine de decoration, ou aussi les sous-cat?
 
Enfin, comment faire le lien entre la table products et la table categories?


Message édité par Brush653 le 28-10-2008 à 11:36:37
mood
Publicité
Posté le 27-10-2008 à 16:59:57  profilanswer
 

n°1805232
tet2neu
emmerdeur
Posté le 28-10-2008 à 00:40:15  profilanswer
 

bouge pas, je vais chercher la description de tes tables dans ma boule de cristal...

n°1805242
yellu
Posté le 28-10-2008 à 08:25:08  profilanswer
 

Ta requete ne modifira que la category "decoration", tu dois spécifier les category enfantes de "decoration" dans le update pour qu'elles soient aussi prisent en compte

n°1805371
Brush653
DEBANNISSEZ BRUNOCREMER
Posté le 28-10-2008 à 11:17:19  profilanswer
 

C'est bien ce qu'il me semblait. Mais comment faire cela?
Imaginons qu'il y ait 20 sous cat, dois je les spécifier manuellement toutes?
N'y a-t-il pas moyen de spécifier que l'on veut changer tous les fichiers de ce répertoire, sous cat inclus?

n°1805375
tet2neu
emmerdeur
Posté le 28-10-2008 à 11:18:30  profilanswer
 

mais elles apparaissent comment dans la table tes sous cat ?

n°1805384
sircam
I Like Trains
Posté le 28-10-2008 à 11:22:30  profilanswer
 

Brush653 a écrit :

Imaginons qu'il y ait 20 sous cat, dois je les spécifier manuellement toutes?


Sans doute pas. Sans voir le schema, dur dur. :(
 

Brush653 a écrit :

changer tous les fichiers de ce répertoire, sous cat inclus?


Hein? Quels fichiers? Quel répertoire? [:pingouino]  
 
 
"réalissation" -> "réalisation" (coquille dans ton titre)


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
n°1805388
Brush653
DEBANNISSEZ BRUNOCREMER
Posté le 28-10-2008 à 11:24:37  profilanswer
 

Il y a un champ parent_id dans les categories.
 
Le champ de base est le 25, puis le champ decoration le 89.
 
Ne serait il pas dès lors possible de demander la modification de tous les prix, des produits, dont la categorie PARENT de leur categorie est = 89 ?
 
 
(ou alors je n'ai rien saisis à ta question?:d)

n°1805402
tet2neu
emmerdeur
Posté le 28-10-2008 à 11:45:01  profilanswer
 

moi j'ai rien compris à ta réponse.
Pourquoi tu parles du champs décoration. "décoration" n'est pas un des libellés des catégories ?
Il y a une table des catégories ?
parce que l'impression que donne ta première requête est que le libellé de la catégorie est directement renseigné dans la table des produits?

 

Donne une description claire de tes tables, sinon on parle dans le vide


Message édité par tet2neu le 28-10-2008 à 11:45:57
n°1805430
Brush653
DEBANNISSEZ BRUNOCREMER
Posté le 28-10-2008 à 13:08:51  profilanswer
 

bon, je reprends :d
 
categorie AUTO, ID 25
--> categorie DECORATION, ID 89, ID_PARENT 25
      --->categorie AUDI, VW, SUZUKI, .... ID variant selon la cat, ID_PARENT 89
 
 
ca c'est pour les CAT, est ce plus clair?

n°1805439
tet2neu
emmerdeur
Posté le 28-10-2008 à 13:35:02  profilanswer
 

donc ta première requête ne fonctionne pas.
Tu dois avoir dans ta table PRODUIT une clé étrangère vers l'ID de la catégorie
 
Ca donnerait :
 
Update products
Set products_price = 69.99
WHERE ID_CATEGORY = 89
 
Ce qui n'est pas suffisant pour les sous cat de DECORATION
 
Il te faut donc une jointure entre les tables PRODUIT et CATEGORIE et faire une mise à jour des produits qui joignent sur une catégorie avec ID = 89 ou ID_PARENT = 89

mood
Publicité
Posté le 28-10-2008 à 13:35:02  profilanswer
 

n°1805441
sircam
I Like Trains
Posté le 28-10-2008 à 13:36:12  profilanswer
 

WHERE category = (SELECT category FROM categories WHERE parent_id = 89)

 

+ la cat 89 elle-même of course

 

Un truc dans le genre.

 

On te demande une description de tables à plusieurs reprises mais ça semble venir difficilement. Là tu nous donne un bout de description d'une table et on devine le reste. [:kiki]

 

EDIT: smells like partly grilled :(


Message édité par sircam le 28-10-2008 à 13:36:49

---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
n°1805454
yellu
Posté le 28-10-2008 à 13:56:46  profilanswer
 

Mais ceci ne marche que pour une arborescence à un seul niveau attention !


Message édité par yellu le 28-10-2008 à 13:57:11

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [SQL] Aide à la réalisation d'une simple requête update

 

Sujets relatifs
Probleme de requête SQL avec Windev trier par date[SQL / Excel] 100 grosses requêtes à faire et VBA ne veut pas
[Résolu]Faire évoluer une requête SQLpd de mise en page d'une requete avec presence d'un lien
Aide sur quicksort en pascalSQL COPY Postgres
A fermerrequete plantée je tourne en rond
Plus de sujets relatifs à : [SQL] Aide à la réalisation d'une simple requête update


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR