我有一个表格,其中的数据可能如下所示:
ID | PARENT_ID | several_columns_to_follow
---+-----------+--------------------------
1 | 1 | some data
2 | 2 | ...
3 | 1 | ...
4 | 4 | ...
5 | 3 | ...
6 | 1 | ...
7 | 2 | ...
8 | 3 | ...
根据要求,我需要允许以两种方式进行排序(根据用户请求):
1) ID 在连续父母中的随机顺序 - 这很容易实现
SELECT * FROM my_table ORDER BY parent_id, random()
2)随机排序的父母中ID的随机顺序 - 这就是我卡住的地方。显然,仅对整个事物进行排序random()
不会很有用。
有什么建议么?理想情况下,在一个 SQL 语句中,但如果需要,我愿意使用多个。数据量不大,所以我不担心性能(最终结果不会超过100行左右)。