草庐IT

RAND_egd

全部标签

php - magento 从类别中获取产品,按 rand() 排序

我有以下内容:$products=Mage::getModel('catalog/product')->getCollection()->addAttributeToSort('id','RAND()')->addAttributeToSelect('small_image')->addCategoryFilter(Mage::getModel('catalog/category')->load($catId));但是我需要通过idRAND()进行排序,我该怎么做呢?(代码显示了我如何尝试但没有运气) 最佳答案 Magento集合不

php - mt_rand 的缺点是什么?

偏见的定义是什么:Thedistributionofmt_rand()returnvaluesisbiasedtowardsevennumberson64-bitbuildsofPHPwhenmaxisbeyond2^32.如果是alternatetie-breakingrulesforrounding中所述的那种偏见,我认为这并不重要(因为偏差并不明显)。除了mt_rand()是claimed比rand()快四倍,只需在前面添加三个字符!假设mt_rand可用,使用它有什么缺点? 最佳答案 mt_rand使用MersenneTwi

php - mt_rand 的缺点是什么?

偏见的定义是什么:Thedistributionofmt_rand()returnvaluesisbiasedtowardsevennumberson64-bitbuildsofPHPwhenmaxisbeyond2^32.如果是alternatetie-breakingrulesforrounding中所述的那种偏见,我认为这并不重要(因为偏差并不明显)。除了mt_rand()是claimed比rand()快四倍,只需在前面添加三个字符!假设mt_rand可用,使用它有什么缺点? 最佳答案 mt_rand使用MersenneTwi

mysql - 使用 `rand()` 和 `having`

我有一个包含记录列表的表。每次迭代,必须从特定的偏移量开始随机选择一组。每一行都有机会被选中(例如,新的或不经常被选中的行被选中的次数更多)。但是,某些东西不起作用,导致返回不满足使用别名rand()的条件的行。我正在尝试使用以下查询:selectid,probability,rand()rolledChancefromrecordswhereid>:offsethavingrolledChance其中:offset是preparedstatement参数,是该用户在上一次迭代中最后扫描的id。在这样创建的表上(这是表的相关子集):CREATETABLErecords(idINT,pr

mysql - 使用 `rand()` 和 `having`

我有一个包含记录列表的表。每次迭代,必须从特定的偏移量开始随机选择一组。每一行都有机会被选中(例如,新的或不经常被选中的行被选中的次数更多)。但是,某些东西不起作用,导致返回不满足使用别名rand()的条件的行。我正在尝试使用以下查询:selectid,probability,rand()rolledChancefromrecordswhereid>:offsethavingrolledChance其中:offset是preparedstatement参数,是该用户在上一次迭代中最后扫描的id。在这样创建的表上(这是表的相关子集):CREATETABLErecords(idINT,pr

mysql - 按值分组 RAND()

有可能得到分组的随机值吗?----------------nID|val---------------A|XXXA|YYYB|LB|MB|NB|P----------------使用这条SQL:SELECTnID,VALFROMT1GROUPBYnID我的结果总是:nIDval--------AXXXBL但我想要每个nID的不同结果。喜欢:nIDval--------AYYYBN或nIDval--------AXXXBP有可能吗?http://sqlfiddle.com/#!2/357b8/3 最佳答案 使用子查询。SELECTr.

mysql - 按值分组 RAND()

有可能得到分组的随机值吗?----------------nID|val---------------A|XXXA|YYYB|LB|MB|NB|P----------------使用这条SQL:SELECTnID,VALFROMT1GROUPBYnID我的结果总是:nIDval--------AXXXBL但我想要每个nID的不同结果。喜欢:nIDval--------AYYYBN或nIDval--------AXXXBP有可能吗?http://sqlfiddle.com/#!2/357b8/3 最佳答案 使用子查询。SELECTr.

php - MySQL 选择随机行 - rand() 性能

这个问题在这里已经有了答案:MySQLselect10randomrowsfrom600Krowsfast(28个回答)关闭9年前.与其他解决方案相比,ORDERBYrand()性能真的很慢吗?如果是,从数据库中选择随机行的更好方法是什么?我的查询:SELECTsNameFROMbpointWHEREplaceID=?ORDERBYrand()LIMIT1; 最佳答案 是的,ORDERBYRAND()在较大的结果集中可能会非常慢。一个选项是用这个语句获取结果集(到一个数组中):SELECTsNameFROMbpointWHEREpl

php - MySQL 选择随机行 - rand() 性能

这个问题在这里已经有了答案:MySQLselect10randomrowsfrom600Krowsfast(28个回答)关闭9年前.与其他解决方案相比,ORDERBYrand()性能真的很慢吗?如果是,从数据库中选择随机行的更好方法是什么?我的查询:SELECTsNameFROMbpointWHEREplaceID=?ORDERBYrand()LIMIT1; 最佳答案 是的,ORDERBYRAND()在较大的结果集中可能会非常慢。一个选项是用这个语句获取结果集(到一个数组中):SELECTsNameFROMbpointWHEREpl

mysql - MySQL 的 ORDER BY RAND() 是如何工作的?

我一直在研究和测试如何在MySQL中进行快速随机选择。在此过程中,我遇到了一些意想不到的结果,现在我不确定我是否知道ORDERBYRAND()的真正工作原理。我一直认为,当您对表执行ORDERBYRAND()时,MySQL会向表中添加一个新列,该列填充有随机值,然后按该列对数据进行排序,然后例如您采用随机到达的上述值。我做了很多谷歌搜索和测试,最后发现查询Jayoffersinhisblog确实是最快的解决方案:SELECT*FROMTableTJOIN(SELECTCEIL(MAX(ID)*RAND())ASIDFROMTable)ASxONT.ID>=x.IDLIMIT1;虽然普通