如何解决MYSQL从另一张表的每一行加入随机行
我有两个表格:食品和配料(请参阅下面的图片1 )。
我希望将每种食物的成分随机化(可以是所有食物的重复成分)。也如何使用查询来检索价格?谢谢
我尝试使用下面的SQL,但没有获得想要的结果(请参阅图片2 ),因为如果使用2015-08-01
2015-08-31
2015-08-10
2015-10-02
2015-10-05
2015-09-28
,则所有行的成分保证相同。如果使用sample SQL 1
,价格也会随机分配,与相应的配料不匹配。
sample SQL 2
解决方法
如果您正在运行MySQL 8.0,则可以为此使用export interface Person {
name: string;
email: string;
dob: string;
address: string;
number: string;
userName: string;
pssw: string;
};
:
row_number()
,
这也适用于旧版本的MySQL数据库。
SELECT food,indeg,MAX(rn)
FROM (
SELECT x.*,@rn := @rn + 1 AS rn
FROM ( SELECT f.description AS food,i.description AS indeg
FROM Foods f
JOIN Ingredients i
ORDER BY RAND()
) x
JOIN (SELECT @rn := 0) r
) a
GROUP BY food
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。