Comment obtenir le nom des données d'une table relationnelle au lieu de l'identifiant
P粉276064178
P粉276064178 2024-03-31 20:48:12
0
2
270

J'ai deux tables

Héros

id Nom universe_id
12 Étiquette 1
99 Tranches de gluten 1

Univers

id Nom
1 Andromède
2 Aurora

Comment utiliser l'universnameau lieu deuniverse_idpour renvoyerheroles données de la table. Désolé, je n'ai pas suffisamment d'expérience SQL pour accomplir cette tâche simple. J'ai lu quelques réponses dans SO qui nécessitent l'utilisation de JOIN.

J'essaie de faire quelque chose comme ça.

exports.getHero = (req, res) => { const sql = "SELECT * FROM `hero` WHERE `id`='" + req.params.id + "' JOIN `universe` WHERE `id`=`universe_id` ON `hero.universe_id`=`universe.id`"; db.query(sql, (error, results) => { if (error) { console.log(error); } else { response.returnSingleValue(results, res); } }); };

Mais ça ne marche pas.

Mise à jour :

Le résultat attendu est :

[{ id: 12, name: Mark, universe_id: Andromeda }, { id: 99, name: Glume, universe_id: Andromeda }]

P粉276064178
P粉276064178

répondre à tous (2)
P粉432906880

Champs que vous pouvez utiliser dans la clauseid值上将universe联接到hero,然后有意选择您希望在输出中看到的初始SELECT:

SELECT `hero`.`id`, `hero`.`name`, `universe`.`name` FROM `hero` JOIN `universe` ON `hero`.`universe_id` = `universe`.`id`
    P粉521697419
    const sql = "SELECT h.id, h.name, u.name as universe_id FROM `hero` as h LEFT JOIN `universe` as u ON h.universe_id=u.id";
      Derniers téléchargements
      Plus>
      effets Web
      Code source du site Web
      Matériel du site Web
      Modèle frontal
      À propos de nous Clause de non-responsabilité Sitemap
      Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!