Mysql
 sql >> Database >  >> RDS >> Mysql

Nidificato Inserisci in e seleziona l'istruzione

Il problema che hai è quando provi a inserire il risultato di

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

nella tua tavola Poiché ciò restituisce più di un record, non è possibile inserirlo dove dovrebbe trovarsi un record. IN non risolve il problema in quanto ciò non impedisce la restituzione di più di un record.

Se vuoi inserire un record per ogni record restituito puoi utilizzare:

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'