Si je veux insérer un enregistrement tout en regardant une clé étrangère, je peux le faire avec:syntaxe SQL (INSERTS avec plusieurs clés étrangères)
INSERT INTO stores_products (name, product_id)
SELECT 'storeABC',
id
FROM products
WHERE name = 'product123';
(où product_id est une clé étrangère à la table des produits Cependant, je n'arrive pas à comprendre la syntaxe lorsque j'ai besoin de rechercher des clés étrangères à partir de plusieurs tables.
Par exemple, je veux faire quelque chose comme:
INSERT INTO stores_products
(name, product_id, owner_id)
SELECT 'storeABC', products.id, owners.id
FROM products
WHERE name = 'product123'
FROM owners
WHERE name = 'owner456';
(La table et les noms de colonnes sont juste un exemple, je sais que cela ne fait pas tout à fait sens d'un point de vue de la conception de base de données, mais Ma question concerne la syntaxe ...). Merci.
erreur MySQL 1064 - erreur de syntaxe à « ET OU nom ... » –
a confirmé la « ET OÙ » syntaxe ne fonctionne pas avec MySQL – Fergal