sql >> Databáze >  >> RDS >> Mysql

Vnořený příkaz Vložit do a vybrat

Problém je, když se pokusíte vložit výsledek

SELECT product.product_adressnummer 
FROM product 
WHERE product.product_name='testproduct'
AND product.product_version='2.50c' 
AND product_updateDatum >= '2015-12-11'

do vašeho stolu. Protože to vrací více než jeden záznam, nemůžete jej vložit tam, kde by měl být jeden záznam. IN neřeší problém, protože to nezabrání vrácení více než jednoho záznamu.

Pokud chcete vložit záznam pro každý vrácený záznam, můžete použít:

INSERT INTO 
    reports (report_date, report_emploee, report_content, report_art, report_adressnummer)
SELECT
    NOW(), 
    'UpdateMaster', 
    'content', 
    'AutoUpdate' ,
    product.product_adressnummer 
FROM product 
WHERE product.product_name='testproduct'
AND product.product_version='2.50c' 
AND product_updateDatum >= '2015-12-11'



  1. Jak zajistit, aby v číslech auto_increment nebyly žádné mezery?

  2. Zjistěte, jak mohutnost ovlivňuje výkon

  3. Jak přidat jedinečný klíč do existující tabulky (s řádky, které nejsou jedinečné)

  4. Sequelizovat spojení dvou tabulek, které nejsou spojeny