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 :

Je sèche et pourtant çà parait simple


Sujet :

MS SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté
    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 : 55
    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
    Par défaut Je sèche et pourtant çà parait simple
    Salut

    Aprés deux heures de recherche infructueuses, je viens chercher un éclaircissement parmi vous.

    Je tente de faire une requête imbriqué, mais il me dit que j'écris mal.
    Voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select id_bien from (SELECT * FROM ListingMandat )
    Et voici le message d'erreur
    Ligne 1 : syntaxe incorrecte vers ')'.
    Sachant que ListingMandat est une vue. Je ne comprends pas ce qu'il veut exactement.

    Quant à moi, pourquoi faire un truc aussi tordu. Je développe un site et j'ai besoins de gérer une pagination un peu complexe. Le seul moyen efficace que j'ai est de récupérer une liste de chose à afficher et de stocker en variable de session les identrifiant de ces choses en BDD. Mais pour cela il faut que je récupère la requête qui a servi de base. c'est pour çà qu'elle à l'air simple comme çà, mais ave un peu d'utilisation elle prends jusqu'à 14 clauses where et 12 tris.

    Merci pour votre aide.

  2. #2
    Membre confirmé
    Inscrit en
    Mars 2006
    Messages
    158
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 158
    Par défaut
    bon perso jchui une bonne quiche en ce qui concern les vues .... et les Bdd (mais ca faut pas l'ebruiter )

    je l'ai jamais utilise ....

    mais pour moi le svues sont des tables virtuelles qui rassemble des champs/ des tables que tu n'as pas pu assembler comme tu voulais.

    donc dans:

    SELECT * FROM ListingMandat

    tu recupere tous les champs et tous les enregistrements que tu as dans ta vue ... ce qui fait beaucoup à prioris !!

    et a partir de cette sous requettes tu recupère le champ "id_bien"

    Il faut peu etre que tu recupere seulement id_bien de ta vue ?!

    select id_bine from ma_vue
    ou
    select distinct (id_bien) from ma_vue

    ....

    moi j'ai une question ouverte pour completer mon enseignement , comment fait il pour recupere un champ specifique dans tous les champs qu il a recup puisque tu lui donne aucun argument ?

    ....

    desole si tu es encore moi clair apres ca !!

  3. #3
    Membre expérimenté
    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 : 55
    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
    Par défaut
    oui, je vois bien où tu veux en venir. Mais dans mon cs, je ne peux pas toucher à la requête qui est entre els paraenthèse, c'est une chaine de caractère que je récupère de ma apge d'avant et je ne sais jamais à l'avance ce qu'il va y avoir dedans.

    La seule dont je sois sûr c'est qu'il y aura mon champ id_bien.

    Pour répondre à ta question : le fait d'avoir ou pas des arguments ne change rien au fait de récupérer un champ particulier.

    Merci pour ta tentative d'aide.

  4. #4
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    22 010
    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 010
    Billets dans le blog
    6
    Par défaut
    La bonne syntaxe est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT id_bien FROM (SELECT * FROM ListingMandat ) AS T
    En effet SQL Server exige que toutes les tables soient nommées. Or (SELECT * FROM ListingMandat ) est une table anonyme. AS T relève l'anonymat.

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

  5. #5
    Membre expérimenté
    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 : 55
    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
    Par défaut
    Merci, çà marche vachment mieux comme çà. fallait y penser et çà ne m'étais pas venu à l'esprit.

    Merci pour ton aide.

  6. #6
    Membre confirmé
    Inscrit en
    Mars 2006
    Messages
    158
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 158
    Par défaut
    je sais pas si c'est un moyen detourne, mais n 'est il pas possible d'utiliser les curseurs à la palce ??

    la quelle methode est le plus fiable et la moins gourmande surtout !!!

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

Discussions similaires

  1. Réponses: 8
    Dernier message: 17/03/2011, 09h16
  2. [AJAX] Fonction ajax pourtant toute simple
    Par Wizard50 dans le forum AJAX
    Réponses: 5
    Dernier message: 04/03/2010, 18h00
  3. Un SELECT pourtant si simple.
    Par beejeridou dans le forum Requêtes
    Réponses: 2
    Dernier message: 25/11/2008, 13h40
  4. Expression régulière pourtant toute simple
    Par Danae dans le forum Linux
    Réponses: 1
    Dernier message: 01/12/2005, 15h18
  5. Probleme très étrange mais pourtant si simple ! (Alias)
    Par Artanis dans le forum Langage SQL
    Réponses: 2
    Dernier message: 13/05/2005, 19h56

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