我在 pgsql 上有一个带有名称的表(有超过 1 个 mio. 行),但我也有很多重复项。我选择 3 个字段:id
, name
, metadata
.
我想用ORDER BY RANDOM()
and随机选择它们LIMIT 1000
,所以我这样做是为了在我的 PHP 脚本中节省一些内存。
但是我怎么能这样做,所以它只会给我一个名称没有重复的列表。
例如[1,"Michael Fox","2003-03-03,34,M,4545"]
将返回但不返回[2,"Michael Fox","1989-02-23,M,5633"]
。名称字段是最重要的,并且每次我进行选择时在列表中必须是唯一的,并且它必须是随机的。
我尝试使用GROUP BY name
, bu 然后它希望我在 id 和元数据中GROUP BY
或在聚合函数中,但我不想以某种方式过滤它们。
任何人都知道如何获取许多列但只在一列上执行不同的操作?