2016-03-07 81 views

回答

1

這裏有幾個解決方案。

這使用子查詢返回col2的不同值。

INSERT INTO table1 (id, col1, col2) 
SELECT NULL, col2, FLOOR(RAND()*(1000))+1 
FROM 
(
    SELECT DISTINCT col2 
    FROM table2 
) 

以下濫用GROUP BY子句只爲不同的col2值生成行。雖然在缺省安裝的MySQL上這應該是正常的,但它可能無法工作,具體取決於爲安裝設置的選項,並且可能不適用於其他類型的SQL。

INSERT INTO table1 (id, col1, col2) 
SELECT NULL, col2, FLOOR(RAND()*(1000))+1 
FROM table2 
GROUP BY col2