Interroger plusieurs tables à partir d'une seule colonne d'ID
Dans une requête récente, un utilisateur a cherché à afficher quels hôtes utilisaient des modèles spécifiques de Zabbix tableau. Cependant, les hôtes et les modèles étaient répertoriés dans le même tableau, ce qui créait un défi pour les distinguer.
Pour résoudre ce problème, l'utilisateur a référencé une deuxième table, hosts_templates, qui fournissait la corrélation entre les hôtes et les modèles. La table hosts_templates, contenant des colonnes pour l'ID de modèle d'hôte, l'ID d'hôte et l'ID de modèle, offrait les données requises pour connecter les hôtes et les noms de modèles.
Solution
Pour y parvenir le résultat souhaité, une requête avec des doubles jointures est nécessaire :
SELECT h1.name as host_name, h2.name AS template_name FROM hosts_template AS t JOIN hosts AS h1 ON t.hostid = h1.hostid JOIN hosts AS h2 ON t.hosttemplateid = h2.hostid
Dans ce requête :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!