Toujour sur INSERT INTO

Fermé
transfix - 31 déc. 2010 à 14:31
 transfix - 31 déc. 2010 à 16:46
Bonjour,




voila le code sQL généré qui marche et génère de nouveaux enregistrements
INSERT INTO COMIntim8
SELECT Tresorerie.N°Cde
FROM Tresorerie
WHERE ([Tresorerie].[soldereçu]>0.0) AND NOBord2>0

Mais en même temps je voudrais mettre à jour des champs suite à calcul dans la table COMIntm8 avec des valeurs de champs qui sont dans la table Tresorerie (exemple : Total (table COMIntim8) = a*b (table Tresorerie))
merci réponse

4 réponses

Bonjour,

Voici un exemple pour mettre à jour tous les champs 'Total' de la table 'COMIntm8' avec a*b de la table TRESORERIE.

J'ai supposé que NCde permettait de faire la jointure entre les deux tables, mais tu ne l'a pas présisé.

UPDATE COMIntm8 COM SET COM.Total = (
SELECT TRE.A*TRE.B FROM TRESORERIE TRE
WHERE TRE.NCde = COM.NCde )

Cordialement, M.
0
Bonjour, merci pour la réponse
Oui en effet NOcde fait la jointure.
LA syntaxe que tu indique je dois la mettre après ce que j'ai écrit (ci-dessus) séparé par ; car je ne suis pas top en SQL
MErci réponse
0
Tout dépend de comment tu exécutes tes requêtes,
Mais oui, ca me paraît une bonne idée de séparer ces deux requêtes par un ';'
0
j'ai peut être mal formulé mais suite au filtre validé je veux créer un nouvel enregistrement et remplir ses champs avec en partie des éléments qui existent (dans la table CDE) et d'autres que je calcule à partir des champs de la table cde existante qui elle ne change pas
0
Ne pas tenir compte de ce que j'ai rajouté ci-dessus car incomplet
Voila la formulation complète
j'ai peut être mal formulé mais suite au filtre validé (voir SQL de départ) je veux créer un nouvel enregistrement dans une autre table (COMIntim8) et remplir ses champs avec en partie des éléments qui existent (dans la table CDE) et d'autres que je calcule à partir des champs de la table cde existante qui elle ne change pas
merci réponse
0