J'ai 3 tables associées et je voudrais montrer avec une requête SQL une table avec le "titulo" de la table "Recetas" avec la "catégorie" du tableau "Catégories" sélectionnée, une recette peut avoir Plus d'une catégorie pour cela, j'ai créé la table "Recetas-Catégories", j'ai essayé avec des sous-requêtes mais je ne l'obtiens pas, je suis un débutant dans SQL.
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; SET AUTOCOMMIT = 0; START TRANSACTION; SET time_zone = "+00:00"; DROP TABLE IF EXISTS `categorias`; CREATE TABLE IF NOT EXISTS `categorias` ( `id` int(11) NOT NULL AUTO_INCREMENT, `categoria` varchar(255) COLLATE utf8_spanish2_ci NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM AUTO_INCREMENT=16 DEFAULT CHARSET=utf8 COLLATE=utf8_spanish2_ci; INSERT INTO `categorias` (`id`, `categoria`) VALUES (1, 'Sopas y cremas'), (2, 'Salsas'), (3, 'Potajes'), (4, 'Ensaladas'), (5, 'Pastas'), (6, 'Arroces'), (7, 'Legumbres'), (8, 'Huevos'), (9, 'Carnes'), (10, 'Pescados'), (11, 'Mariscos'), (12, 'Cocteles y refrescos'), (13, 'Postres y reposterÃa'), (14, 'Internacional'), (15, 'Robot de cocina'); COMMIT;
3 Réponses :
Vous devez apprendre sur "SQL Joinages". Voici comment vous rejoignez ces 3 tables:
select r.titulo from recetas r join recetas-categorias rc on rc.idreceta = r.idreceta join categorias c on c.id = rc.idcategoria where c.categoria = 'Internacional'
Je pense que de comprendre votre question, vous cherchez peut-être à être présenté à MySQL Tables jointures.
C'est une vaste catégorie, trop large pour une réponse ici, il est donc probablement préférable de vous diriger quelque part comme < un href = "http://www.mysqltutorial.org/mysql-join/" rel = "nfollow noreferrer"> http://www.mysqltorial.org/mysql-join/ pour apprendre ce qu'ils sont et Comment ils sont utilisés. p>
en termes de requête, l'amendement suivant: p> retourne p> ... qui semble être ce que vous essayez d'atteindre? p> p>
Pour cette opération, utilisez rejoindre .
SELECT r.titulo FROM recetas r, recetas-categorias rc, categorias c WHERE r.idreceta = rc.idreceta AND rc.idcategoria = c.id AND c.categoria="Internacional"
Structure de poste et exemple de données sous forme de texte, pas comme des images. Inclure également le résultat attendu de votre exemple de données.
Okey, merci =)