djman
Registered
Имам 2 таблици:
[sql]CREATE TABLE Vehicle (
id INT,
max_weight REAL
);
CREATE TABLE Package (
id INT,
weight REAL
);
[/sql]
Как да се групират Packages така, че сумата от weight да е <= от max_weight? Ясно е, че такива групи може да има много, но тук няма значение коя - важното е да има поне един package във всяка група, за всеки Vehicle.
Целта е да се изкара списък [package_ids, sum(weight), max_weight]. package_ids може да е "STRING_AGG(id::varchar(16), ',')", но нататък не мога да го измисля. :roll:
[sql]CREATE TABLE Vehicle (
id INT,
max_weight REAL
);
CREATE TABLE Package (
id INT,
weight REAL
);
[/sql]
Как да се групират Packages така, че сумата от weight да е <= от max_weight? Ясно е, че такива групи може да има много, но тук няма значение коя - важното е да има поне един package във всяка група, за всеки Vehicle.
Целта е да се изкара списък [package_ids, sum(weight), max_weight]. package_ids може да е "STRING_AGG(id::varchar(16), ',')", но нататък не мога да го измисля. :roll: