從父表隨機查詢一條資料ID,更新到子表的外來鍵

2021-09-22 19:58:03 字數 342 閱讀 4873

父表、子表單獨生成了一些測試資料,但子表對應的外來鍵字段未生成(資料庫設計該欄位可為空)。為了更好地模擬資料關係,要填充子表外來鍵字段,填充要保證參照完整性,並盡量均衡引用父表記錄。

利用mysql的rand()函式,從父表隨機抽取記錄,並將該記錄id填充至子表對應外來鍵字段。

update article 

set tenant_id =

(select tenant_id

from sys_tenant

order by rand()

limit 1)

where article_id> 2000;

ThinkPHP find方法 查詢一條資料記錄

thinkphp find 方法是和 select 用法類似的乙個方法,不同之處 find 查詢出來的始終只有一條資料,即系統自動加上了 limit 1 限制。當確認查詢的資料記錄只能是一條記錄時,建議使用 find 方法查詢,如使用者登入賬號檢測 public function chekuser ...

MySql從表結果集中隨機取一條資料

該功能的實現基於 mysql 查詢結果中自動加序號列 select from select rowno rowno 1 as rowno,pwd from pur admininfo,select rowno 0 b tmp where rowno select round rand 1000000...

MySql從表結果集中隨機取一條資料

該功能的實現基於 mysql 查詢結果中自動加序號列 select from select rowno rowno 1 as rowno,pwd from pur admininfo,select rowno 0 b tmp where rowno select round rand 1000000...