Phoenix には Ecto と呼ばれるデータベース操作ライブラリがあり、PostgreSQL や MySQL(MariaDB)、SQLite といったものに対応しています。 Ecto を使うと定義したモデルを元に簡単に(SQL を書かずに)CRUD 操作ができるようなのですが、今回はあえて生の SQL を発行して MariaDB に問い合わせることをしたいと思います。 Phoenix アプリケーションの作成についてはコチラを参照してください。 なぜ生 SQL なのか Ecto はモデル定義さえすれば、それを使った CRUD 操作やテーブルの作成、果ては JSON API や HTML までも生成してくれる優れものです。 ただ、自分の経験上、DB 操作を伴う大規模な WebAPI を開発していくと、以下のようなケースに遭遇し、どうしても生 SQL を書きたくなることが多いです。 レコード