IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement SQL Server Discussion :

Update avec 2 base liées


Sujet :

Développement SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti Avatar de Aro-concept
    Homme Profil pro
    Automaticien Roboticien
    Inscrit en
    Février 2019
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Automaticien Roboticien
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2019
    Messages : 22
    Par défaut Update avec 2 base liées
    Bonjour a tous

    Je suis débutant en sql, j’aimerais faire une requête mais je ne sais pas si c’est possible :

    Voici mes données :
    Mes 2 Bases sont dans la même base
    - Base 1
    o Table Article
     AR_REF
     AR_ DELAI
    - Base 2
    o Table Gamme
     CODE_GAMME
     TPS_R
     TPS_P

    Additionner les TPS _R et TPS _P
     Si la somme est > 24 (h) alors on met arrondi sup (Résultat /24) dans AR _ DELAI ou il y a CODE_GAMME = AR_REF et .....


    Sinon la somme est <= 24 (h) alors on met 1 dans AR _ DELAI ou il y a CODE_GAMME = AR_REF and ....


    Merci de votre aide par avance

    Ronan

  2. #2
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 138
    Par défaut
    Bonjour,

    Citation Envoyé par Aro-concept Voir le message
    j’aimerais faire une requête mais je ne sais pas si c’est possible :
    C'est possible.
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  3. #3
    Membre averti Avatar de Aro-concept
    Homme Profil pro
    Automaticien Roboticien
    Inscrit en
    Février 2019
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Automaticien Roboticien
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2019
    Messages : 22
    Par défaut
    Et auriez vous des zxemple de liaisons qui peuvent maider

  4. #4
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 454
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 454
    Par défaut
    Essayez ainsi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    update art
       set art.AR_DELAI = case
                            when gam.TPS_R + gam.TPS_P > 24
                            then ceil((TPS_R + TPS_P) / 24.000)
                            else 1
                          end
      from base1.Article as art
      join base2.Gamme   as gam on gam.CODE_GAMME = art.AR_REF;

  5. #5
    Membre averti Avatar de Aro-concept
    Homme Profil pro
    Automaticien Roboticien
    Inscrit en
    Février 2019
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Automaticien Roboticien
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2019
    Messages : 22
    Par défaut
    Merci beaucoups pour ce bout de code
    je vois maintenant comment faire

    Ca marche bien pour la liaison des bases
    juste que il passe tout le temps par le else et malgré un valeur supérieur a 24

    Ronan

  6. #6
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 454
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 454
    Par défaut
    Il faut vérifier vos types et vos unités.

  7. #7
    Membre averti Avatar de Aro-concept
    Homme Profil pro
    Automaticien Roboticien
    Inscrit en
    Février 2019
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Automaticien Roboticien
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2019
    Messages : 22
    Par défaut
    Bonjour

    Voici le code remis avec les bon nom
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
     
    DECLARE @Heure DECIMAL (18,6);
     
     
    SET @Heure = 8.000000
     
     
    UPDATE art
    	SET art.AR_Delai = 3,
    	art.AR_DelaiFabrication = CASE
    	WHEN   ((gamme.TPS_REGL_MA  + gamme.TPS_USIN_MA)   > @Heure)
    	THEN CEILING ((gamme.TPS_REGL_MA + gamme.TPS_USIN_MA) / @Heure)
    	--ELSE 1
    	END
    	FROM [AUMATECH].[dbo].F_ARTICLE AS art
    	join [SAGE100GP].[dbo].T_GAMME_DETAIL   AS gamme ON gamme.CODE_GAMME = art.AR_REF
    	WHERE art.AR_Ref = 'AA00000084-ARM'
    	AND art.FA_CodeFamille = 'PFS' OR art.FA_CodeFamille = 'PF' OR art.FA_CodeFamille = 'SF'

Discussions similaires

  1. [AC-2000] UPDATE avec 2 tables liées et 2 paramètres (1 par table)
    Par Michocs17141 dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 05/06/2012, 18h21
  2. UPDATE d'une base donnée avec DTS
    Par cosa nostra dans le forum SSIS
    Réponses: 1
    Dernier message: 06/05/2008, 09h43
  3. Vitesse d'Access avec 2 bases liées
    Par OtObOx dans le forum Modélisation
    Réponses: 6
    Dernier message: 26/04/2008, 08h58
  4. Comment faire une moyenne avec une base de données liée ?
    Par BXDSPORT dans le forum Bases de données
    Réponses: 3
    Dernier message: 12/11/2007, 21h43
  5. Export de base avec des tables liées
    Par Yali dans le forum Administration
    Réponses: 6
    Dernier message: 31/03/2006, 11h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo