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

Requêtes MySQL Discussion :

Vue avec sous-requête [MySQL-5.5]


Sujet :

Requêtes MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    477
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2006
    Messages : 477
    Par défaut Vue avec sous-requête
    Bonjour à vous et merci d'avance pour votre aide.

    J'ai souhaité créer une vue en partant de la requête suivante.
    Mais il semblerais que ma version de SQL ne prend pas en charge les sous-requêtes pour des vues.
    (C'est seulement à partir de 5.7 que cela pourrait fonctionner)

    Existe-il une alternative pour palier à ce probléme ?

    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
     
    -- 0 for shoppers and 1 for stores
    SELECT postID, ownerID, content, created, modified, like_count, pin_count, comment_count, model, name, GROUP_CONCAT(tags.label) AS tags
    FROM posts AS Post
    JOIN 
    (SELECT posts_vendors.post_id as postID, posts_vendors.store_id as ownerID, 1 as model, stores.storename as name
    FROM posts_vendors
    JOIN stores ON posts_vendors.store_id = stores.id
    UNION
    SELECT posts_shoppers.post_id, posts_shoppers.user_id, 0, users.username
    FROM posts_shoppers
    JOIN users ON posts_shoppers.user_id = users.id) AS listName ON Post.id = listName.postID
    LEFT OUTER JOIN posts_tags ON Post.id = posts_tags.post_id
    LEFT OUTER JOIN tags ON posts_tags.tag_id = tags.id
    GROUP BY postID;
    Merci encore,

  2. #2
    Membre chevronné Avatar de Sebwar
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2012
    Messages
    172
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 172
    Par défaut
    Hello !

    Pour répondre à la question des sous requêtes dans une vue, l'idée serait de faire plusieurs vues :
    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
    CREATE VIEW sub AS
    	SELECT posts_vendors.post_id as postID, posts_vendors.store_id as ownerID, 1 as model, stores.storename as name
    	FROM posts_vendors
    	JOIN stores ON posts_vendors.store_id = stores.id
    	UNION
    	SELECT posts_shoppers.post_id, posts_shoppers.user_id, 0, users.username
    	FROM posts_shoppers
    	JOIN users ON posts_shoppers.user_id = users.id
     
    CREATE VIEW res AS
    	SELECT postID, ownerID, content, created, modified, like_count, pin_count, comment_count, model, name, GROUP_CONCAT(tags.label) AS tags
    	FROM posts AS Post
    	JOIN sub AS listName ON Post.id = listName.postID
    	LEFT OUTER JOIN posts_tags ON Post.id = posts_tags.post_id
    	LEFT OUTER JOIN tags ON posts_tags.tag_id = tags.id
    	GROUP BY postID;

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    477
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2006
    Messages : 477
    Par défaut
    Merci Sebwar

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

Discussions similaires

  1. [MySQL] erreur avec sous-requête
    Par Piou2fois dans le forum Langage SQL
    Réponses: 4
    Dernier message: 04/02/2006, 13h44
  2. Suppression avec sous-requête conditionnelle
    Par Magnus dans le forum Langage SQL
    Réponses: 13
    Dernier message: 05/10/2005, 10h39
  3. DELETE avec sous-requête
    Par say dans le forum Langage SQL
    Réponses: 2
    Dernier message: 27/04/2005, 08h20
  4. Créer une vue avec des requêtes UNION ?
    Par webtheque dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 04/04/2005, 12h37
  5. suppression avec sous requête conditionnelle
    Par melmel dans le forum Requêtes
    Réponses: 8
    Dernier message: 18/03/2004, 23h20

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