GOOGLE ADS

mercredi 4 mai 2022

les données ne parviennent pas de la manière appropriée que je veux dans la jointure interne multiple postgresql

im essayant de faire une jointure interne sur deux tables. 1. utilisateurs, 2. manèges. dans la table des utilisateurs, il existe deux types d'utilisateurs (0 pour l'utilisateur, 1 pour le conducteur). et dans la table de trajet, je stocke user_id et provide_id qui proviennent de la table des utilisateurs. alors maintenant, le problème est que je ne peux pas obtenir d'informations sur les deux utilisateurs simultanément.

SELECT name,mobile, email, name as driverName
FROM users
INNER JOIN rides
ON users._id = rides.user_id
INNER JOIN rides as ride
ON users._id = ride.provider_id;

cela me renvoie une table nulle.










NomNuméroe-mailnom du conducteur

Solution du problème

Je serais peut-être enclin à exprimer votre requête en utilisant la logique existante :

SELECT u.name, u.mobile, u.email
FROM users u
WHERE EXISTS (SELECT 1 FROM rides r WHERE u._id = r.user_id) AND
EXISTS (SELECT 1 FROM rides r WHERE u._id = r.provider_id);

Cela renverra tous les utilisateurs pour lesquels il existe à la fois un trajet d'utilisateur et de fournisseur.

Aucun commentaire:

Enregistrer un commentaire

Comment utiliseriez-vous .reduce() sur des arguments au lieu d'un tableau ou d'un objet spécifique ?

Je veux définir une fonction.flatten qui aplatit plusieurs éléments en un seul tableau. Je sais que ce qui suit n'est pas possible, mais...