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 :

Le nombre de TOP en argument [2008]


Sujet :

Développement SQL Server

  1. #1
    Membre extrêmement actif
    Avatar de zooffy
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Août 2004
    Messages
    3 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Bâtiment

    Informations forums :
    Inscription : Août 2004
    Messages : 3 895
    Points : 1 434
    Points
    1 434
    Par défaut Le nombre de TOP en argument
    Bonjour à tous

    Je suis devant une colle ! Je dois fournir en paramètre le nombre du TOP dans mon SELECT. Bon un petit bout de code pour être plus clair (désolé, je fourni pas de script de table puisque ma question est assez "empirique") :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    DECLARE @nbPerso INT
    SET @nbPerso = 10
     
    SELECT TOP @nbPerso H.Id_Heros, H.Nom_Heros, COUNT(Id_Perso) AS Id_PersoC, CONVERT(varchar(50), H.Date_Sortie, 106) AS DateSortie FROM STATH_Heros H
    Comme vous vous en doutez, ça marche pas du tout.
    Mais alors comment je peux faire pour fournir en paramètre d'une Procédure Stockée un entier qui sera ce nombre d'enregistrement que je veux ?

    J'ai farfouillé le net tout l'après midi et j'ai rien trouvé, peut-être que c'est juste impossible.

    Merci pour votre aide.
    Mon blog de création d'univers : Qualhiryann
    Mon site qui parle de moi www.ozouf.com
    Pour les joueurs de WOW je suis sur Ysondres et mon perso est Ablanore.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Tu vas pleurer devant la simplicité de la solution : mets des parenthèses !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    declare @n int = 35
    select top (@n) * from sys.all_objects
     
    (35 row(s) affected)

  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
    21 768
    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 : 21 768
    Points : 52 719
    Points
    52 719
    Billets dans le blog
    5
    Par défaut
    Plus propre et normalisé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    DECLARE @nbPerso INT
    SET @nbPerso = 10
     
    SELECT H.Id_Heros, H.Nom_Heros, COUNT(Id_Perso) AS Id_PersoC, CONVERT(varchar(50), H.Date_Sortie, 106) AS DateSortie 
    FROM   STATH_Heros H
    ORDER  BY Id_Heros OFFSET 0 ROW FETCH FIRST @nbPerso ROWS ONLY
    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
    Invité
    Invité(e)
    Par défaut
    Tu as inventé ça, c'est pas possible autrement !
    Sérieusement, j'avais jamais vu ça avant mais ce n'est dispo qu'à partir de la version 2012.

    En tout cas, SQLPro, tu es une source infini d'humilité pour moi.

  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
    21 768
    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 : 21 768
    Points : 52 719
    Points
    52 719
    Billets dans le blog
    5
    Par défaut
    Citation Envoyé par 7gyY9w1ZY6ySRgPeaefZ Voir le message
    Tu as inventé ça, c'est pas possible autrement !
    Sérieusement, j'avais jamais vu ça avant mais ce n'est dispo qu'à partir de la version 2012.

    En tout cas, SQLPro, tu es une source infini d'humilité pour moi.
    Prosterne toi !!!

    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 extrêmement actif
    Avatar de zooffy
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Août 2004
    Messages
    3 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Bâtiment

    Informations forums :
    Inscription : Août 2004
    Messages : 3 895
    Points : 1 434
    Points
    1 434
    Par défaut
    Merci beaucoup les gars, c'est juste génial et effectivement, la version m'a fait pleurer, surtout pour ne pas l'avoir trouvé dans les tutos que j'ai parcouru

    Mais sinon, je suis condamné à passer en version 2012, pas grave, c'était au programme.

    Encore merci et bonne journée.
    Mon blog de création d'univers : Qualhiryann
    Mon site qui parle de moi www.ozouf.com
    Pour les joueurs de WOW je suis sur Ysondres et mon perso est Ablanore.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Macros et nombre d'arguments variable
    Par kaisse dans le forum C
    Réponses: 7
    Dernier message: 28/07/2005, 10h10
  2. [Fortran 90] Nombre variable d'arguments
    Par Zoera dans le forum Fortran
    Réponses: 2
    Dernier message: 08/03/2005, 13h08
  3. Nombre d'arguments variable
    Par gege2061 dans le forum C
    Réponses: 7
    Dernier message: 05/08/2004, 15h43
  4. UNION de deux SELECT avec nombre d'arguments différents
    Par orus8 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 16/07/2004, 14h32
  5. Procédure avec un nombre variable d'arguments
    Par charly dans le forum Langage
    Réponses: 15
    Dernier message: 21/06/2002, 11h08

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