对于样本表:
ID courseId dishID
1 1 1
2 1 5
3 2 4
4 1 7
5 2 8
我不想通过唯一的 courseId 随机 discId 进行选择。所以我的结果是
ID courseId dishId
1 1 1
3 2 4
如果我比其他随机再次运行:
ID courseId dishId
2 1 5
5 2 8
ETC...
我正在使用微软 sql 2008
例如
SELECT * FROM Table
WHERE dishId IN
(SELECT MIN(dishId)
FROM Table
GROUP BY courseId
这会给我返回正确的结果,但 discId 始终相同,但我希望 discId 是随机菜
或者我可以先通过 courseId = 1 从一个表中选择,然后通过 courseId 2 再次选择(两个结果都按 newId() 排序)并进行 UNION,但是当我有 7 门课程时,我不想有 7 SELeCT sentances 。 .. 我希望没有 UNION 也能得到同样的结果