ふるつき

v(*'='*)v かに

Joken SQL Challenge #1 を開催しました。

 過去、 Joken Marathon Challenge を開催して大失敗したことがありましたが、めげずに、今度は Joken SQL Challenge を開催しました。

スコアサーバや問題に関するリポジトリ(使用したデータはMastodonから実在のものをスクレイピングしたため、公開していません):

github.com

Joken SQL Challenge とはなにか

Joken とは私が所属している情報処理研究会の通称であり、 SQL Challenge はその名の示す通り、SQLに関するコンテストです。今回は、 PostgreSQL 上での SELECT 文の技術を競うコンテストにしました。様々なデータをSELECT文一つで取得するというわけです。

 問題はたとえば、こんな感じで出題されます。これは実際に出題された問題のひとつで、難易度でいえば難問の部類に入ります。

f:id:Furutsuki:20170429133027p:plain

これにたいして、ユーザは次のようなクエリを実行することでこの問題の指示を満たし、問題を解こうとします(図は不正解になるけど)。

f:id:Furutsuki:20170429133258p:plain

 このように、全部で16問が配点とともに用意されており、もっとも点数を稼いだユーザが優勝になります。競技時間はおよそ1時間45分となりました

競技の結果

 はじめに 30 分ほど SQL とは、データベースとは、SQLの文法についてなどを喋ったあとに競技をやってもらいました。

すると、こんな結果になりました。 theoldmoon0602 は私のダミーアカウントなので、全部で 7名の参加ですね。

f:id:Furutsuki:20170429133723p:plain

 1位が 1000 点を取れたら上々かな、と思っていたのですが、思いのほか優秀な成績を残して楽しんでもらえていたようなので、こちらは成功といえる結果だったと思っています。

 一方で、実際にやってもらうと、作問ミスがあったり、UIのわかりづらさがあったりと運営側の甘さもわかりました。

開催してみてどうだったか

 楽しかったです。企画しだしたのは 4/8 頃のようで、ptr-yudaiに「こんなのやりたいけどどうだろう?」とお尋ねしていました。今回はptr-yudaiは不参加で、オブザーバのような役割を果たしてもらったのですがこれも正解だったと思います。