sql >> Base de Datos >  >> RDS >> Mysql

INSERTAR EN con SubQuery MySQL

Use literales numéricos con alias dentro de un SELECT declaración. Sin () son necesarios alrededor del SELECT componente.

INSERT INTO qa_costpriceslog (item_code, invoice_code, item_costprice)
  SELECT
    /* Literal number values with column aliases */
    1 AS item_code,
    2 AS invoice_code,
    item_costprice
  FROM qa_items 
  WHERE item_code = 1;

Tenga en cuenta que en el contexto de un INSERT INTO...SELECT , los alias no son realmente necesarios y solo puede SELECT 1, 2, item_costprice , pero en un SELECT normal necesitará los alias para acceder a las columnas devueltas.