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 :

[MS SQL Server 12] Ratio/ Pourcentage temps passé


Sujet :

Développement SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2010
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2010
    Messages : 10
    Par défaut [MS SQL Server 12] Ratio/ Pourcentage temps passé
    Edit : Pouvez vous déplacer mon message dans la partie SQL Server, Merci !

    Bonjour,
    Je bloque sur une problème qui a surement déjà été abordé mais je ne trouve pas de sujet le concernant...

    Nom : cassiop-db-val - Remote Desktop Connection.png
Affichages : 752
Taille : 9,4 Ko

    En faite je souhaiterai rapporter mon SpentTime sur une base 100 par Matricule dans ma colonne RatioSpentTime.
    Mathématiquement je vois très bien mais je n'arrive pas a le retranscrire en SQL...(Pour l'instant je tente que l'affichage du resultat, je verrai après pour l'update de ma table)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT  Matricule,(SpentTime / (SELECT SUM(SpentTime) FROM Temp_ODdePaieWithoutGenius))*100
    FROM Temp_ODdePaieWithoutGenius
    J'imagine bien qu'a un moment il faut que je calcul le SpentTimeTotal par matricule (Group By?) mais je ne vois pas ou....

    Merci par avance pour vos réponses...

  2. #2
    Modérateur

    Profil pro
    dba
    Inscrit en
    Janvier 2010
    Messages
    5 643
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : dba

    Informations forums :
    Inscription : Janvier 2010
    Messages : 5 643
    Par défaut
    Bonjour,

    comme ceci ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    SELECT  
        Matricule
        ,SpentTime / SUM(SpentTime) OVER(PARTITION BY  Matricule)*100
    FROM Temp_ODdePaieWithoutGenius

  3. #3
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    22 002
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 22 002
    Billets dans le blog
    6
    Par défaut
    Plus exactement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT Matricule, SUM(SpentTime) AS TOTAL,
           100.0 *SUM(SpentTime) / SUM(SpentTime) OVER() AS RATIO_POURCENT
    FROM   Temp_ODdePaieWithoutGenius
    GROUP  BY Matricule;
    Et pour apprendre le SQL :
    Nom : Couverture SQL Synthex 4e ed - 500.jpg
Affichages : 430
Taille : 77,8 Ko

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  4. #4
    Membre averti
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2010
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2010
    Messages : 10
    Par défaut
    Merci a vous 2.
    @aieeeuuuuu : Ta solution fonctionne bien !


    @SQLpro : Tellement exact que SSMS met une erreur sur la requête (A prendre avec humour!)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Msg 8120, Level 16, State 1, Line 1
    Column 'Temp_ODdePaieWithoutGenius.SpentTime' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.
    Ps : Je viens juste de me procurer ce bouquin, j'attend que le facteur passe pour commencer à le dévorer

  5. #5
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    22 002
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 22 002
    Billets dans le blog
    6
    Par défaut
    Si tu respectais la charte de postage, ça nous aiderais !!!

    A lire : http://www.developpez.net/forums/a69...gage-sql-lire/

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  6. #6
    Membre averti
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2010
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2010
    Messages : 10
    Par défaut
    Ok... Je prend note pour mes prochain sujet.

    Mon objectif est de créer un package ETL avec SSDT 2010, qui sera pas la suite intégré dans mon server SQL 2012. Ce Package aura pour but d'effectuer plusieurs traitement dont celui abordé plus haut.
    Pour ce faire, je souhaite exécuter un tache de requêtes SQL(dans mon package) pour mettre a jour ma table Temp_ODdePaieWithoutGenius, plus particulièrement la colonne RatioSpentTime.

    Le résultat de cette colonne est un prorata par matricule ramener à une base 100. C'est a dire, que pour chaque ligne, le RatioSpentTime = SpentTime diviser par la somme du total des SpentTime par matricule multiplié par 100.

    Ma méthode n'est surement pas la meilleur mais je pense que c'est un bon de départ pour aborder le SQL, SQL Server et SSIS, je n'ai pas le choix, on me demander d'aborder les 3 sujet en même temps...

    Merci par avance pour vos réponses.

Discussions similaires

  1. [Debut Request] [Fin response] Temps passé
    Par ZeKiD dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 11/10/2006, 16h32
  2. Temps passé sur une page !!
    Par nizarsm dans le forum ASP
    Réponses: 4
    Dernier message: 30/06/2006, 21h42
  3. Calcul du temps passé dans les procédures ...
    Par Jloox dans le forum Autres éditeurs
    Réponses: 1
    Dernier message: 05/10/2005, 14h31
  4. Calculer le temps passé
    Par Joeleclems dans le forum MFC
    Réponses: 4
    Dernier message: 29/04/2005, 09h40
  5. [FLASH MX] Le temps passe?
    Par nix dans le forum Flash
    Réponses: 3
    Dernier message: 08/02/2005, 08h48

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