我有两张桌子
第一个是流程
,第二个是medialist
我想插入一个新行进行处理,但我需要一个以前没有被用户插入的medialist.id。
从进程中选择medialist_id,其中user_id = 648 - >这将返回插入的行。
我希望这些行从medialist表中排除,并获得一个随机的medialist id以将新行插入medialist表。
最有效的方法是什么?
答案 0 :(得分:1)
INSERT INTO process (user_id,ads_id,medialist_id,`status`) SELECT 'your_uid','your_ads_id',id,'your_status' FROM medialist WHERE id NOT IN (SELECT medialist_id FROM process) ORDER BY RAND() LIMIT 1