douqin2108 2016-05-14 21:15
浏览 86
已采纳

MySQL将随机行从一个表移动到另一个表

Is it possible to move a random row(with one column) to another table in that way so no one get this data even if will request it simultaneously?

For example: If you open my page, you get a data from MySQL that no one will get even if open this page simultaneously with you.

Now I do it this way:

mysql_query("INSERT INTO `ShowRow` SELECT * FROM `AllRows` WHERE 1 LIMIT 1");
mysql_query("DELETE FROM `AllRows` LIMIT 1");

Is it possible to do some another better way? Or how to SELECTsome specific row if there is only one column?

  • 写回答

2条回答 默认 最新

  • douzhouhan4618 2016-05-14 23:14
    关注

    Thank you to all, but I have come up to do it this way:

    $accCount = mysqli_query($connect, "SELECT * FROM AllRows");
    $accCount = mysqli_num_rows($accCount);
    $RandAcc = rand(0, $accCount);
    $result = mysqli_query($connect, "SELECT * FROM `AllRows`");
    $ReplaceRandAcc = mysqli_result($result, $RandAcc);
    
    mysqli_query($connect, "INSERT INTO `ShowRow` SELECT * FROM `AllRows` WHERE login='".$ReplaceRandAcc."'");
    mysqli_query($connect, "DELETE FROM `AllRows` WHERE login='".$ReplaceRandAcc."'");
    
    function mysqli_result($res, $row, $field=0) {
        $res->data_seek($row);
        $datarow = $res->fetch_array();
        return $datarow[$field];
    } 
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 在若依框架下实现人脸识别
  • ¥15 网络科学导论,网络控制
  • ¥100 安卓tv程序连接SQLSERVER2008问题
  • ¥15 利用Sentinel-2和Landsat8做一个水库的长时序NDVI的对比,为什么Snetinel-2计算的结果最小值特别小,而Lansat8就很平均
  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同