首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在MySQL中的列之间随机引用

在MySQL中的列之间随机引用
EN

Stack Overflow用户
提问于 2020-12-03 21:45:40
回答 1查看 14关注 0票数 0

我想在MySQL中随机化一个组成的数据集。数据如下所示:

代码语言:javascript
运行
复制
|---------|--------|
|Column 1 |Column 2|
|---------|--------|
|   A     |   1    |
|---------|--------|
|   B     |   2    |
|---------|--------|
|   C     |   3    |
|---------|--------|

..。在对它们进行混洗后,应该如下所示:

代码语言:javascript
运行
复制
|---------|--------|
|Column 1 |Column 2|
|---------|--------|
|   C     |   2    |
|---------|--------|
|   A     |   3    |
|---------|--------|
|   B     |   1    |
|---------|--------|

有没有一个简单的函数可以做到这一点?只找到了RAND(),但在这种情况下,使用现有的("Real")引用以随机顺序选择它们是不够的。

提前感谢!

EN

回答 1

Stack Overflow用户

发布于 2020-12-04 00:21:47

代码语言:javascript
运行
复制
WITH 
cte1 AS ( SELECT column1, ROW_NUMBER() OVER (ORDER BY RAND()) rn FROM src_table ),
cte2 AS ( SELECT column2, ROW_NUMBER() OVER (ORDER BY RAND()) rn FROM src_table )
SELECT cte1.column1, cte2.column2
FROM cte1
JOIN cte2 USING (rn)

fiddle

每个列值分别被随机枚举,然后通过这些随机数将这些值组合回成对。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65127218

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档