繁体   English   中英

MySQL:在现有表中使用随机 function 生成派生列

[英]MySQL: using random function in existing table for generating derived column

我有一个表“产品”,其中包含“类别”列,它由 10 个不同的类别组成,没有列 category_id。 我想为每个类别派生一个包含新列 category_id 的表。

select product_id,description,category, round(rand(10)) as category_id from product;
select product_id,description,category, rand( over partition by 10) from product; 

使用上面的查询我已经尝试过“round(rand())”但是这只给出了0和1,但我希望它为1到10的10个产品分配category_id。

我也想从两个随机类别中检索产品

使用 FLOOR(1+ rand() * 10) 这会给你一个介于 1 和 10 之间的数字

select product_id,description,category,FLOOR(1+ rand() * 10) as category_id from product;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM