【SQL】SQLを効率よく部品化

プログラミング

【SQL】SQLを効率よく部品化

いゃぁ、
アメリカ内部のゴタつき。
そしてアメリカ同盟国の日本。
アメリカが変になれば間違いなく日本にも影響します。

さぁて本題、今回はSQLを部品化するという内容。
あ、今回使うデータベースはSQLServerです。
データはここ最近放送されたアニメを題材に。


そもそもSQLってば?

SQLとは、データベースの中から情報を抽出するためのコマンドですな。
よくプログラムと思う人がいるようだが、これはコマンド。

世間のシステムではデータベースを使わないことはまずありえないでしょうね。


なぜ部品化するのか?

システムの機能では提供していないのだが、データを抽出して欲しいとの依頼が結構ある。
ワタクシ、業務内容に保守作業も含まれるためにそのような作業が必要なのである。

機能化しないが、イチイチ最初からSQLコマンドを作成していては非効率的。

なわけで、早々に作業を終えて帰宅したいワタクシは部品にしておくのである。


実際に作ってみる

まずはデータベースにテーブルを作成。

create table anime_lists
(
begin_yearmonth int not null,
title varchar(100) not null,
review_num int not null,
);

テストだから実務で使う内容ではないよ。

次にデータを登録するSQLを実行。

insert into anime_lists values (202101,'アーヤと魔女',0);
insert into anime_lists values (202101,'アイカツプラネット!',0);
insert into anime_lists values (202101,'アイ★チュウ',0);
insert into anime_lists values (202101,'アイドールズ!',0);
insert into anime_lists values (202101,'IDOLY PRIDE',0);
・
・
・
・
以下290件ほどつづく

その次にSQL本体。
これが部品ですね。

DECLARE @TARGET_SEASON_FROM     INT     = 202001
DECLARE @TARGET_SEASON_TO       INT     = 202101

SELECT begin_yearmonth          AS '放送開始年月' 
      ,title                    AS 'タイトル'
      ,review_num               AS '評価'
  FROM anime_lists
 WHERE begin_yearmonth          BETWEEN @TARGET_SEASON_FROM AND @TARGET_SEASON_TO
   AND review_num               > 0
ORDER BY review_num             DESC

今回はたいしたことない部品ですが、
DECLARE @の部分で変数を作成
条件に一覧として抽出するわけだ。

業務で使用する場合にはもっと複雑になる。

出力したデータがこれだ。

放送開始年月 タイトル 評価
202010 体操ザムライ 5
202007 とある科学の超電磁砲T 5
202007 炎炎ノ消防隊 弐ノ章 5
202004 かくしごと 5
202004 かぐや様は告らせたい~天才たちの恋愛頭脳戦~ 5
202010 ダンジョンに出会いを求めるのは間違っているだろうかlll 4
202010 いわかける! 4
202010 おちこぼれフルーツタルト 4
202010 ご注文はうさぎですか? BLOOM 4
202007 彼女、お借りします 4
202007 ソードアート・オンライン アリシゼーション War of Underworld 4
202007 放課後ていぼう日誌 4
202007 やはり俺の青春ラブコメはまちがっている。完 4
202007 Re:ゼロから始める異世界生活 第2期 4
202004 転生したらスライムだった件(第1期/再放送) 4
202004 放課後ていぼう日誌 4
202001 とある科学の超電磁砲T 4
202001 理系が恋に落ちたので証明してみた。 4
202010 アサルトリリィ BOUQUET 3
202010 犬と猫どっちも飼ってると毎日たのしい 3
202010 魔女の旅々 3
202010 ラブライブ!サンシャイン!!(再放送) 3
202001 へやキャン△ 3
202001 マギアレコード 魔法少女まどか☆マギカ外伝 3
202001 群れなせ!シートン学園 3
202001 痛いのは嫌なので防御力に極振りしたいと思います。 3
202001 ダーウィンズゲーム 3
202010 ギャルと恐竜 2
202004 ギャルと恐竜 2
202004 ミュークルドリーミー 2

2010年の冬アニメから2021冬アニメの一覧を評価の降順で出力。
要するに見たアニメの評価の高いものを先頭にしているわけだ。
ちなみに、評価は自分でつけました。5段階評価。

それにしても300本近くあるなかで30本ぐらいしか観てないのか。
適当にデータを作ったもんで、忘れてるものがありそう。

せっかくだからアニメ紹介

せっかくだから多少紹介しましょうかねぇ。
感想は、あくまで個人の感想です。

ここ最近で面白かったのは「体操ザムライ」かな~。
絵は…あまり好みではないが。


これは鉄板。「かぐや様は告らせたい~天才たちの恋愛頭脳戦~」
実写になっているようだが、アニメの方が断然上。
OVAと3期にも期待。


あとは、「理系が恋に落ちたので証明してみた。」とか。
自分が理系なんで、理系アルアルがwwww
これも絵のタッチがあまり。


これも意外と面白かった。「いわかける!」
とりあえず登る癖があるワタクシとしてはね。
絵がイマイチではあるが…。


イッキ観した方がいいと思うのが「とある科学の超電磁砲T」。
2クールアニメなことと10話程度が一つの話の塊になっているあたり。
それにしても「とある」シリーズに関してはとにかく長いので気合入れる必要があり。


一覧には無いがこれも。「ダンベル何キロ持てる」。
ダイエットしたい女子向け、かなwwww?
オープニングは名曲www


微妙だったのは「アサルトリリィ BOUQUET」。
脚がムチムチしすぎている。同人系…?
そして登場人物が多すぎ。


謎だったのが「ギャルと恐竜」。
2話ほど観て脱落。

半分ほどは人からの薦めで観たものが多いかも。
タイトルに惑わされてはいけない。
当然のように「鬼滅の刃」は薦められていますが、別に流行りに合わせて観ているわけじゃないんでね。

まだまだ紹介したいアニメがたくさんありますが、記事にするのが大変なのでここまで。


さて、交通事故の件。
処理も最終段階に入りました。
最終的な診断書と、欠勤カレンダーを相手の保険会社に提出。
その後も、、、手続き手続きでしばらくは処理に時間がかかりそうだ。

早く終わらせてしまいたいもんだ。

前の記事 次の記事