見出し画像

【SQL】社内SEのよもやま話【ド素人】

おはようございます、こんにちは、こんばんは。




■簡単な自己紹介

営業部から情報システム部へ移籍し、素人社内SEとして奮闘しています。

「よもやま話」第1話です。↓


■えすきゅーえる?なにそれおいしいの?

異動当初、上司に「SQLは分かる?」と聞かれて食い気味に「わかりません!」と返事した僕です。

開発や管理系とは無縁だったので初めて聞きましたぜ・・・。


・「SQL」とは


SQLとは「データベースを操作するための言語」ですね。

これを使用してデータベースにアクセスします。
大量のデータが格納してあるデータベースの情報を編集したり抽出したりすることができます。


・結果、独学。

情報システム部として社内の業務のIT化・DX化を目指すとなると、データベースの活用は必須です。

そのために必要な言語である「SQL」。


営業部で働いていた時はSQLの"え"の字も知らず、異動後は「えすきゅーえる?なにそれおいしいの?」状態。


基本的な構文は元SEの上司がざっと教えてくれました。

ですが、
「あとはググったり実装されてる他のプログラムを覗いて参考にしてな」
とのこと。

当然ですね。ここは学校では無いですし、僕も新入社員ではないので。


しかし、教えてもらった「基本的な構文」というのは本当に基本なことであって、英文法で例えると主語や動詞の並び順やbe動詞の使い方などといった中学一年生が最初の英語授業で習うような内容


・難しいのは構文じゃない。

「ググれば分かる」というのは幸いなことだと改めて実感した話。

SQL構文はググれば分かります。
教則本だってたくさん出版されています。

だからこそ、詳しく教えてもらう必要はありません。


覚えることが大変だったのは「データテーブルの中身」と「格納場所」です。


例えば、以下のような販売実績データを抽出したいとします。


簡単に書くとこんな感じ↓ですね。

例なので論理削除フラグの区別やテーブルの結合等は省略しています。


これは分かり易くするため取り出したいカラム名を「売上日」など日本語で表記していますが、実際は日本語は使えません。

例えば、「salesdate」や「sho_cd」、「num」といった具合で表記されている場合もあるでしょう。

日付形式だって「yyyymmdd」なのか「yyyymmddhhmmss」なのかも異なります。

そして、テーブルも独特の名称で数多く存在しますし、テーブル同士を結合しないと目的のデータを取り出せない場合もあります。


なので、抽出したいデータが「どこのテーブルに格納されていて」、「どういうカラム名」で保管されているかをまずは調べなければなりません。

自社データなので当然ググっても出てきませんから、人に聞いたり資料を見たりして把握していくことになります。


ただでさえ慣れていないSQLを扱う上に、取り出したいデータの項目名すら分からない状態からスタートするのはなかなかに辛かったですねぇ・・・。


■内製ゆえに。


・前職で使っていた販売基幹システムは消費者向けのUIだった。

今とは異なる会社で使っていたシステムではSQL文を書かなくても「データ抽出が自由にできる集計表の作成機能」が備わっていました。

項目名をドラッグ&ドロップで追加していって・・・という感じ。

項目名も日本語で「納品日」や「受注数量」などといった目で見てすぐに理解できるものでしたし、マウス操作だけで簡単に集計表を作成できました。

事実、パッケージシステムを少しカスタマイズしたものだったのでユーザーに優しいシステムでした。


・良くも悪くも、フルスクラッチ

しかし今の会社のシステムはフルスクラッチ。
自社の業務に合わせたオーダーメイド品で、システム会社との共同開発です。

自社の都合にわがままにシステムを合わせることが出来る反面、ユーザーにある程度の知識とスキルが求められるシステムとなっていました。

この違いが使い勝手の良し悪しに繋がったのでしょう。


■おわりに。

そもそも情シスは「ユーザー」ではありません。

ユーザーである従業員がシステムをストレスなく使えるようにする。
SQLなどを使って作成したプログラムを効率的に使ってもらう。
というのが情シスの仕事です。

ユーザーでは無いので開発系のスキルが求められるのは当然といえば当然ですが・・・。


でも、SQLにしろ他のプログラミング言語にしろ、覚えて使えるようになるのは楽しいですよ。
ゲームのように、レベルを上げて新たなスキルを習得するかのように自分のできることが増えていくのは快感です。

しかし、コンピューター言語を扱えるようになるというのはあくまで「スタート地点に立った」ことに過ぎません。

その習得したスキルを使ってどのように改善し、DX化を進めていくのか考えるのが情シスの大きな役割です。

最後までお読みいただきありがとうございました!

この記事が気に入ったらサポートをしてみませんか?