Използвайте числови литерали с псевдоними в SELECT изявление. Не () са необходими около SELECT компонент.
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;
Имайте предвид, че в контекста на INSERT INTO...SELECT , псевдоними всъщност не са необходими и можете просто SELECT 1, 2, item_costprice , но в нормален SELECT ще ви трябват псевдоними за достъп до върнатите колони.