1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

HasuraにおけるGraphQLのメモ

Posted at

はじめに

前回 Heroku + Hasura で GraphQL を使うためのセットアップをしましたが、
色々クエリを試しているとこれってどうやるのっていう部分がいくつかあったので備忘録として残します。

今後もクエリに関して発見があったら追記していく予定です。

サンプルとして使用したデータは次の 2 つのテーブルです。

カウント

XXX_aggregate.aggregate.count を使うことで数を調べることができます。

平均・最小値・最大値・分散などの統計演算

カウントと同様に XXX_aggregate.aggregate で用意されています。

Join

employees -> salaries

employees 1 つにたいして 複数の salaries が存在しうるため、employees -> salaries の Array リレーションを作成します。

スクリーンショット 2020-09-28 5.52.34.png

GraphQL のクエリ画面から employee.salaries が呼び出せるようになっています。
これが employees -> salaries の JOIN に対応する機能となっています。

salaries -> employees

salaries 1 つにたいして 1 つの salaries が存在しうるため、salaries -> employees の Object リレーションを作成します。

スクリーンショット 2020-09-28 5.52.24.png

GraphQL のクエリ画面から employee.salaries が呼び出せるようになっています。
これが salaries -> employees の JOIN に対応する機能となっています。

おわりに

GraphQL では JOIN や COUNT などの処理はバックエンド側がリゾルバーというものを作成して機能のひとつとして実装する必要があるみたいです。
ですが、Hasura を使うとコードを書くことなくこれらの機能が使えてしまうので、恐ろしや・・・という感じでした。

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?