2016-01-09 66 views
0

我有2個MySQL表。將錶行值更新爲來自其他表的隨機行值

的表具有列出所有與需要使用隨機選擇的州縮寫來填充所有空值狀態

colStates | column2 | column 3 
------------------------------ 
AK  | stuff | stuff 
AL  | stuff | stuff 
AR  | stuff | stuff 
etc..  | etc.. | etc.. 

第二個表有一個柱(randomStates)的柱。

喜歡的東西...

UPDATE mytable SET `randomStates`= randomly selected state value WHERE randomStates IS NULL 

有人可以幫我這個說法。我環顧了其他職位,但我不明白他們。

回答

0

這對我的作品與試驗數據在SQLite的:

UPDATE mytable 
SET randomStates = (SELECT colStates FROM 
         (SELECT * FROM first_table ORDER BY RANDOM()) 
        WHERE randomStates IS NULL) 

沒有第一選擇部分,你最終插入的所有空randomStates場相同的隨機值。 (即如果你只是SELECT COUNTVALUE FROM COUNDER ORDER BY RANDOM()你沒有得到你想要的)。

+0

實際上並沒有改變任何東西......它仍然具有與隨機狀態相同的值。 – carinlynchin