У мене є таблиця pgsql з іменами (має більше 1 млн. Рядків), але у мене є також багато дублікатів. Я вибираю 3 поля: id
, name
, metadata
.
Я хочу вибрати їх випадковим способом ORDER BY RANDOM()
і LIMIT 1000
, тому я роблю це багато кроків, щоб зберегти деяку пам’ять у моєму PHP-скрипті.
Але як я можу це зробити, тому він лише дає мені список, який не має дублікатів імен.
Наприклад, [1,"Michael Fox","2003-03-03,34,M,4545"]
буде повернуто, але ні [2,"Michael Fox","1989-02-23,M,5633"]
. Поле імені є найважливішим і повинно бути унікальним у списку кожного разу, коли я роблю вибір, і воно повинно бути випадковим.
Я спробував GROUP BY name
, але тоді він очікує, що я GROUP BY
матиму ідентифікатори та метадані як у функції, так і в агрегаті, але я не хочу, щоб вони якось фільтрувались.
Хтось знає, як отримати багато стовпців, але зробити лише окремий на одному стовпчику?