MySQL
MySQL
SELECT RAND(); -- [0,1)
SELECT RAND(42); -- 固定种子,可复现
-- 随机取 10 行(小表可用)
SELECT * FROM t ORDER BY RAND() LIMIT 10;PostgreSQL
PostgreSQL
SELECT random();
SELECT setseed(0.42); -- 会话级种子
SELECT * FROM t TABLESAMPLE SYSTEM (1); -- 按块采样约 1%
SELECT * FROM t ORDER BY random() LIMIT 10;| 范围 | [0,1) 半开区间 |
|---|---|
| 可复现 | MySQL RAND(seed) 每语句一致;PG setseed 影响会话后续 random() |
| 采样 | 大表用 TABLESAMPLE(PG)或对主键做区间/取模采样 |