J'ai une base de données MySql.
SQL SELECT Rejoindre?
Il y a une table avec des produits et des commandes avec la structure :
- Produits: product_id, nom, manufacturers_id
- Commandes: orders_id, product_id, quantité
Maintenant, je vouloir obtenir toutes les commandes (montrer seulement les produits où product manufacturers_id = 1). Je essayé:
SELECT
orders.orders_id,
orders.product_id
FROM products, orders
WHERE products.manufacturers_id = 1
GROUP BY orders_id
ORDER BY orders_id
Mais cela ne fonctionne pas. Qu'est-ce qui ne va pas?
Sry pour l'édition: modifié par un autre ma fin de poste supprimé une partie essentiell de la question
EDIT
Pour clarifier mon problème j'ai ajouté quelques nouvelles informations:
Je suis un MySQL DB avec les tables MyISAM. Les deux tableaux correspondants sont les suivants:
- orders_products: orders_products_id, orders_id, product_id, product_name, PRODUCT_PRICE, product_name, product_model, final_price, ...
- produits: products_id, manufacturers_id, ...
(pour des informations complètes sur les tableaux voir les produits de capture d'écran (Screenshot) et orders_products capture d'écran (Screenshot))
maintenant ce que je veux est la suivante: - Obtenez toutes les commandes qui ont commandé des produits avec manufacturers_id = 1. Et le nom du produit du produit de cette commande (avec manufacturers_id = 1). Groupé par des ordres.
Ce que je l'ai fait jusqu'à présent est la suivante:
SELECT
op.orders_id,
p.products_id,
op.products_name,
op.products_price,
op.products_quantity
FROM orders_products op , products p
INNER JOIN products
ON op.products_id = p.products_id
WHERE p.manufacturers_id = 1 AND
p.orders_id > 10000
p.orders_id> 10000 pour les tests pour obtenir seulement quelques années ORDER_ID. Mais la requête de thies prend beaucoup de temps pour être exécutée si elle fonctionne même. Deux fois le serveur SQL bloqué. Où est l'erreur?
En raison de la confusion au sujet de mes modifications i a ouvert un nouveau poste plus compréhensible: SQL Inner Join : DB stuck
Quel RDBMS utilisez-vous? –
Il dit "MySQL" en haut. –
Vous dites "product_id = 1, mais votre requête indique manufacturers_id = 1 ... besoin de clarification sur lequel est correct –