Можно ли создать вычисляемый или агрегированный столбец в запросе GraphQL? - PullRequest
0 голосов
/ 23 октября 2019

Я новичок в GraphQL как решение для извлечения данных. Моя команда будет использовать PostgreSQL среди других хранилищ данных. Прежде чем я спущусь по кроличьей норе, мне интересно, можно ли вообще сделать в GraphQL следующее:

  1. Вернуть новый вычисленный столбец
    SELECT col_a, col_b, (col_a / col_b) AS ratio FROM table_1;
    
  2. Возвращает агрегированный результат
    SELECT col_a, sum(col_b, col_c) FROM table_1 GROUP BY col_a;
    
  3. Возвращает вычисленный столбец или агрегированный результат на основе присоединился набор информации
    SELECT SUM(a.col_a, b.col_d) FROM table_1 AS a JOIN table_2 AS b ON a.col_a = b.col_a;
    SELECT (a.col_a / b.col_d) AS ratio FROM table_1 AS a JOIN table_2 AS b ON a.col_a = b.col_a;
    

Я понимаю, что GraphQL предназначен для получения точно того, что вы указываете в запросе, Не больше, не меньше. Нечто подобное SELECT * FROM TABLE; недопустимо, поскольку подстановочный знак является антитезой специфичности. Я надеюсь, что вы все еще можете указать, что хотите, чтобы что-то было сделано с возвращаемым результатом, но мне неясно, как лучше всего справляться с подобными ситуациями.

На данный момент я нашел StackOverflow сообщений, но не много:

...