mysql - 如何与随机和限制联合选择
问题描述
我正在尝试随机化我的训练数据或机器学习。在我的表中有一个只保存两个值“A”和“B”的列。但是当我使用随机查询时,显示的两个值都不相等,并且我的代码不起作用。如何解决这个问题?我在 MySQL TT 上真的很糟糕
我在 XAMPP 上使用 MySQL
SELECT * FROM
(
(SELECT * FROM table WHERE table.category = 'A' LIMIT 10) as t1
UNION ALL
(SELECT * FROM table WHERE table.category = 'A' LIMIT 10) as t2
)ORDER BY RAND()
您的 SQL 语法有错误;检查与您的 MariaDB 服务器版本相对应的手册,以在第 5 行的 'as t2) ORDER BY RAND() LIMIT 0, 25' 附近使用正确的语法
解决方案
您不能为 中的表提供别名UNION
,只能在FROM
或中JOIN
。所以使用
SELECT * FROM (
(SELECT * FROM table1 WHERE table1.category = 'A' LIMIT 10)
UNION ALL
(SELECT * FROM table1 WHERE table1.category = 'B' LIMIT 10)
) AS t1
ORDER BY RAND()
推荐阅读
- windows - 防止 midi 驱动程序在 MS Surface 4 上休眠
- gcc - 致命错误:zlib.h:安装 zlib 时没有这样的文件或目录
- lua - 创建新状态时 Lua 崩溃
- angular - 如何自定义传单弹出窗口以包括图像缩略图和其他自定义?
- javascript - 向网站添加类似注释功能的媒体
- python - Sonarpython 不扫描 Jupyter 笔记本 .ipynb
- java - 通过在 ReactContextBaseJavaModule 中获取 ClipboardManager 获取“无法在未调用 Looper.prepare() 的线程内创建处理程序”
- c# - 在 JSON 中包含数据作为键名是否正确?
- regex - Perl 正则表达式:从困难的字符串中提取名称
- python - 如何将下面的 SQL 状态转换为 Django ORM