Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MySQL从select中插入随机行_Mysql_Database - Fatal编程技术网

MySQL从select中插入随机行

MySQL从select中插入随机行,mysql,database,Mysql,Database,我有一张这样的桌子- Users =========== id userid friendid ------------------------------------------------------------------- Friend_Objs ------------------------------------------------------------------- id | friendid | obj_id --

我有一张这样的桌子-

Users
===========
id
userid
friendid
-------------------------------------------------------------------
Friend_Objs
-------------------------------------------------------------------
id                | friendid              | obj_id
-------------------------------------------------------------------
1                 | 123                   | aaa
1                 | 123                   | bbb
1                 | 123                   | ccc
1                 | 456                   | abc
1                 | 456                   | bbb
1                 | 456                   | cde
还有一个像这样的装置

Game_Objs
===========
id
obj_id
为了进行测试,我需要将Game_Objs中随机数目的obj_id插入到与friendid关联的新表中,如下所示-

Users
===========
id
userid
friendid
-------------------------------------------------------------------
Friend_Objs
-------------------------------------------------------------------
id                | friendid              | obj_id
-------------------------------------------------------------------
1                 | 123                   | aaa
1                 | 123                   | bbb
1                 | 123                   | ccc
1                 | 456                   | abc
1                 | 456                   | bbb
1                 | 456                   | cde
其中,每个friendid的obj_ID数是随机的


仅使用mysql就可以做到这一点吗?如果不是,用PHP实现它的最佳方法是什么

使用类似以下的方法

$Query = "insert into `Friend_Objs` " . 
"values (1, 123, " . substr(str_shuffle("abcefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"), 0, 3);

3
更改为所需字符串的长度。

以下是如何快速将600k随机行加载到MySQL表中:()

将其与:

INSERT INTO table(column1, column2 ) SELECT ...

使用上面链接中返回随机行的select查询。

I。不管怎么说,我不知道怎么做只有mysql,但使用php它很可能只是在php中对obj_id做一个随机的操作,然后把它放在mysql中执行的Insert查询中。这不是家庭作业,但我的mysql技能绝对是一把需要磨砺的剑。这只是一个测试用例,我们需要从中提取大量数据。在PHP中这样做的问题是,Users表是400k+行,game_objs表是20k,因此PHP需要存储大量数据。我主要是在寻找一个mysql解决方案。谢谢你的回答。对不起,我可能不太清楚,但是Friend_Objs.obj_id必须是Game_Objs.obj_id的值