2022-08-01から1ヶ月間の記事一覧

GoでSQL発行時に渡す変数を可変にする

Web画面に複数のチェックボックスが表示されていて、ユーザが自由に任意の数を選択してsubmitされたりした場合、IN句が可変になったりする場合がある。 どうやって可変長の変数を渡すのだろう?というのが気になった。 で、試行錯誤の末、以下のようにしたら…

SQLのEXISTS

WHERE句にEXISTSと書いてそれにつづけてサブクエリをかく。 各行について条件に一致するものがあるとEXISTSが真になるからその行が抽出される、みたいな感じ。 drop table if exists A; drop table if exists B; create table A (id integer, name text); cr…

elasticsearchを使って全文検索してみたい

elasticsearchは検索エンジンの一種。類似するものにApache Solrなどがある。 検索エンジンでは、文書登録時に単語を抽出(日本語の場合は形態素解析という技術を使用)し、各単語からその単語が含まれているドキュメントを示すIDをひけるようにする索引であ…

データベースからグループごとに最大値であったレコードを取得したい

データベースからグループごとに最大値であったレコードを取得したい。最大値そのものではなくて、あるカラムが最大値になっているレコードすべてを取得。 学校のテストのスコアを管理するDBを想定してみる。 まず生徒の情報を保存するテーブルを作る。 crea…