Используйте инструкцию INSERT ... SELECT
, в которой вы выбираете постоянные значения, а также данные из products_temp
:
INSERT INTO products (product_data, vendor_id)
SELECT data, '1' FROM products_temp
Вот способ сделать это смутно, основываясь на этом ответе:
function weightedIntegerValues(weights, total) {
let flooredValues = [];
const weightSum = weights.reduce((sum, item) => {
return sum + valueFunc(item);
}, 0);
let flooredSum = 0
weights.forEach((weight, i) => {
const weighted = total * weight / weightSum
const floored = Math.floor(weighted);
flooredValues.push({
floored: floored,
diff: weighted - floored,
index: i
});
flooredSum = flooredSum + flooredValues[i].floored;
});
flooredValues = flooredValues.sort((a, b) => b.diff - a.diff);
const difference = total - flooredSum;
for (let i = 0; i < difference; i++) {
flooredValues[i].floored += 1;
}
return flooredValues.sort((a, b) => a.index - b.index).map(v => v.floored);
}