【发布时间】:2014-07-26 20:09:28
【问题描述】:
在表 X 中有一个字段 Y (int),其中包含从 1 到 8 的值。 我正在尝试找到最有效的方法来创建一个查询(它是存储过程的一部分),它可以从数据库中随机选择 5 条记录。
这 5 条记录在整个表中不是随机的 - 例如程序应该能够 选择 1 条 Y=1 的随机记录,另外 2 条 Y=2 的记录和另外 2 条 Y 在 (4,5,6) 中的记录。
是否有推荐的方法来实现它或者我应该只使用联合? 此查询需要尽可能快。
【问题讨论】:
-
您选择的 5 条记录是来自 X 表还是其他表?
-
仅从表 X 中选择
-
好的,那么表 X 上肯定还有其他列。我对它的读取方式感到困惑,这听起来像是 X 表是一个只有一列的 8 行表,Y。Juergen 的答案应该有效