J'ai du mal à comprendre si cette requête est possible. J'ai 3 tables, utilisateur, compte, prêt. 2 utilisateurs sont liés par un compte, et tout prêt facilité entre les 2 est lié au account_id. Cependant, lorsque je veux afficher les données dans un tableau, je veux afficher le nom des emprunteurs de la table des utilisateurs et les détails du prêt de la table des prêts. mais il est référencé à partir de lenders_id dans la table de compte.

Voici la DRE: entrez la description de l'image ici

Un exemple pratique serait que si vous étiez prêteur et que vous vouliez accéder au tableau de bord pour voir tous les prêts que vous avez accordés, mais que vous vouliez voir les noms de l'emprunteur, le montant du principal, le taux d'intérêt, etc. et rien de vraiment sur le compte.

Je veux que la table finale ressemble à quelque chose comme:

BorrwerName | PrincipalAmount | InterestRate | RepaymentDate | Relation

Ce que j'ai jusqu'à présent

SELECT user.first_name, user.last_name, loan.principal, loan.interest_rate, 
loan.repayment_date, account.relationship
FROM user
INNER JOIN account ON account.borrower_id = user.id
INNER JOIN loan ON loan.account_id = account.id

Le problème ici est que nulle part où je ne référence même le Lender_ID. qui est la variable que je dois passer à la requête dont les prêts doivent être affichés. Im très perdu, toute aide serait formidable.

-1
bruzza42 31 août 2020 à 18:38

2 réponses

Meilleure réponse

Ajoutez simplement la clause where dans votre requête:

SELECT user.first_name, user.last_name, loan.principal, loan.interest_rate, 
loan.repayment_date, account.relationship
FROM user
INNER JOIN account ON account.borrower_id = user.id
INNER JOIN loan ON loan.account_id = account.id
where account.lender_id = value_to_be_searched;
2
Atif 31 août 2020 à 15:45

Vous pouvez ajouter une clause WHERE:

SELECT u.first_name, u.last_name, l.principal, l.interest_rate, 
l.repayment_date, a.relationship
FROM user u JOIN
     account a
     ON a.borrower_id = u.id JOIN
     loan l
     ON l.account_id = a.id
WHERE a.lender_id = ?;

Vous n'avez pas besoin de SELECT la colonne pour filtrer dessus.

0
Gordon Linoff 31 août 2020 à 15:43