はじめに 前記事で、select関数とselectで使用するwhere関数について扱いました。検索条件が毎回固定である場合はそれでいいのですが、selectを実行する関数等の引数に応じて検索条件を変化させたい場合もあるでしょう。 Haskellでも、if文を使うと「条件によって動作を変える」という実装は可能ですが、「thenとelseは同じ型にしないといけない」という制約があります。そのため「変数の値によってアクションを変える」という実装をする時に、他のプログラミング言語とは違うアプローチが必要な場合があります。 本記事では、まず、select関数で使うWHERE節での条件つきの検索条件を実装について扱います。続いて、where以外の検索条件についても扱います。 条件付きの検索条件 例 Personのリストを取得する共通関数を実装します。この関数は「PersonId(複数指定可)」から検索