gpt4 book ai didi

php - mysqli 查询,其中 50% 在参数内,另一半是随机的

转载 作者:行者123 更新时间:2023-11-29 12:12:06 24 4
gpt4 key购买 nike

所以,我在这里遇到一个问题:

是否可以在我的 sql 中进行类似于此的查询:

  • 至少 20% 的结果来自 A 类
  • 至少 15% 的结果来自 B 类
  • 至少 10% 的结果来自类别 C
  • 至少 10% 的结果来自 D 类

其他 50% 随机(类别 a、b、c、d、e、f、g 等)?

我尝试搜索了一段时间,但没有找到好的答案,所以我希望这里的任何人都可以给出一个好的提示。

提前致谢!!

在有人问我并给我否定之前,我问这个是为了我可以分析我的网站访问者。这根本不是一个随机问题。

PS:php标签是因为有时我会使用php函数来解决此类问题,而网站是基于php的

最佳答案

我不确定你到底想做什么,但我认为你可以用不同的方法解决你的问题,但无论如何我考虑了你的问题,我脑子里唯一的想法是:

*假设您总共有 5000 行,而您只想选择其中的 50 行,这 50 行根据您的百分比分布。

$limit = 50;
$cat_a_per = $limit *0.2; // 20% of the results
$cat_b_per = $limit *0.1; // 10% instead of yours 15% because 15% is incorrect ( try to sum percentages up :) )
$cat_c_per = $limit *0.1; // 10% of the results
$cat_d_per = $limit *0.1; // 10% of the results

$rest_per = $limit*0.5; // the rest 50%

// Now create a 5 mysql queries like the following :
"Select * From my_table where cat='A' limit $cat_a_per" ..
"Select * From my_table where cat='B' limit $cat_b_per" ..
"Select * From my_table where cat='C' limit $cat_c_per" ..
"Select * From my_table where cat='D' limit $cat_d_per" ..
"Select * From my_table limit $rest_per" ..

现在将结果汇总到一个数组中或使用 UNION 即可开始...

关于php - mysqli 查询,其中 50% 在参数内,另一半是随机的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30469766/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com