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

MS SQL Server Discussion :

MSSQL 2k: Condition vertical (sur 2 row differente)


Sujet :

MS SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Novembre 2007
    Messages
    125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Japon

    Informations forums :
    Inscription : Novembre 2007
    Messages : 125
    Par défaut MSSQL 2k: Condition vertical (sur 2 row differente)
    Bonjour,
    j'ai un petit probleme. si il y a 2 ligne le "STRATEGY=I" doit etre MARG_FLG=N
    mais si je n'ai qu'une ligne le MARG_FLG doit etre à "Y"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
          ISIN                            STRATEGY                      MARG_FLG
      ES0312271002                       I                                        N
      ES0312271002                       T                                       Y
    je sais pas si j'ai bien expliqué le probleme, à savoir que ce n'est qu'une partie d'un result set qui remets +- 20 000 rows.

    bien à vous.
    merci

  2. #2
    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
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    je sais pas si j'ai bien expliqué le probleme,
    non.

    Mais intéressez vous aux contraintes CHECK :
    http://sqlpro.developpez.com/cours/s...partie2#L7.2.3

    Voire aux triggers.

    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/ * * * * *

  3. #3
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Novembre 2007
    Messages
    125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Japon

    Informations forums :
    Inscription : Novembre 2007
    Messages : 125
    Par défaut
    j'ai changer le titre !

    Ce n'est pas par apport aux contrainte ou triger.

    g un select ( sur une serie de tables/vues) qui me renvoie +- 20 000 rows.

    en général on peut faire toute sorte de test sur les champs du meme row.
    mais is je doit voir si il y a un doublon (autorisé) si oui une des 2 rows aura un autre flag.

    est ce mieux ?
    c'est sur cette condition =>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    CASE WHEN (c.SecurityId IS not NULL and (Strategy='T' or Strategy is null )) 
    THEN 'Y' ELSE 'N' END MarginRequirementFlag,--marg_flag

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    332
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juin 2002
    Messages : 332
    Par défaut
    Bonjour,

    Tu peux séparer ta requête en deux en utilisant MARG_FLG pour les différencier et faire un LEFT JOIN entre les deux requêtes.

  5. #5
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Novembre 2007
    Messages
    125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Japon

    Informations forums :
    Inscription : Novembre 2007
    Messages : 125
    Par défaut
    Bonjour, merci pour l'idée, elle semble plutot très bonne , mais je me retrouve 2 petit probleme

    la querry est plutot lourde, est ce que cela m'entrainera 2 fois plus de tps de réponse? avec l'idée donnée, je comptais faire un group by donc la 1ere requete aurai été limité à un count(SecurityId) = 1 et donc le flag a la bonne valeur.
    et la seconde partie avec le count(SecurityId)=2.

    Le probleme est que mssql demande de faire un group by de tout les champs, meme des champs calculé. ceci étant plutot contraingant.

Discussions similaires

  1. Réponses: 1
    Dernier message: 10/10/2005, 17h29
  2. Select sur deux bases differentes
    Par Absolut Beauty dans le forum Langage SQL
    Réponses: 13
    Dernier message: 09/09/2005, 15h08
  3. probleme sur count sur une base differente
    Par webisa dans le forum Langage SQL
    Réponses: 5
    Dernier message: 20/07/2005, 05h32
  4. Condition IF sur plusieurs valeurs
    Par davelop dans le forum ASP
    Réponses: 5
    Dernier message: 10/06/2005, 11h10
  5. insert-select sur 2 base différente
    Par gskoala dans le forum Paradox
    Réponses: 2
    Dernier message: 16/11/2004, 15h11

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