GAUCHE les Colonnes de JOINTURE Avec la Clause where dans Oracle Entité la Valeur de l'Attribut(VAE) Tables de Base de données

J'ai une table des UTILISATEURS comme ce

UTILISATEURS

user_id | username
1         tom
2         sam

J'ai aussi un USER_META tableau comme celui-ci

USER_META

user_meta_id | user_id | meta_key | meta_value
1              1         active     1
2              1         car        dodge
3              2         active     0
4              2         car        honda

Mon problème est que j'ai besoin de sélectionner le meta_keys active et et voiture mais seulement pour les utilisateurs qui ont une valeur de 1 pour active donc mon ensemble des résultats doit être quelque chose comme ceci

user_id | user_name | user_meta_id | meta_key | meta_value
1         tom         1              active     1
1         tom         2              car        dodge

J'ai essayé quelques petites choses mais je ne peux pas obtenir ce type de résultat. Voici ce que je pensais peut-être travailler

SELECT * FROM USERS
LEFT JOIN USER_META 
   ON USERS."user_id" = USER_META 
   AND (USER_META."meta_key" = 'active' OR USER_META."meta_key" = 'car') 
WHERE (USER_META."meta_key" = 'active' 
AND USER_META."meta_value" = 1)

le problème c'est que j'obtiens un résultat qui est absent de la voiture meta_key/meta_value

user_id | user_name | user_meta_id | meta_key | meta_value
1         tom         1              active     1

Comment puis-je modifier la requête pour obtenir toutes les informations meta? merci.

OriginalL'auteur Mike | 2011-11-28