初心者殺し?プログラミング初心者にとってMySQLはどれくらい難しい?

こんにちは、ラクシュミです。

インドからMySQLに関する情報をお届けします!

私は主にデータ分析の仕事をしているので、mySQLやSQLという単語はよく耳にします。私はデータ解析を始めるまでまともにプログラミングをしたことがなかったので、SQLを使って分析をすることにすごく不安を感じていました。

今回はSQLがプログラミング初心者にとってどれだけ難しいかを説明していきます。

MySQLはSQL言語の中では世界で一番使われている言語なので、需要の高いスキルです。

またSQL言語は全体的に似ている部分が多い(構文は違っても考え方は同じものが多い)ので、一つ習得すれば他の言語はユーザーガイドを読めばなんとなく触れることが多いです。

意外と簡単?MySQLはプログラミング初心者でも難しくない

MySQLを含めたSQL言語は操作のコマンド自体は難しくありません。

MySQLの操作自体はプログラミングができる人なら、1~2時間触ればすぐに利用できるようになるでしょう。

またプログラミング自体触ったことのない人でも1か月程度で必要な機能を操作できるようになります。

逆に普段難しいプログラミングを組んでいる人だと、単純すぎて逆に分からなくなって混乱してしまうこともあるそうです。

MySQLマスターのコツはやることを順番立てて考えて、簡潔に考えること!

プログラミング初心者でも難しくない!

MySQLが難しくない理由

通常SQLでは『対話型』と呼ばれる、データベースに対する1つの命令を一行程度の文をコマンドを使用して命令を出す方式が採用されています。

MySQLも対話型なので、一つの動作に対して一行で命令を出します。そのため実行したい操作さえ把握していれば、コードを書くことはそんなに難しくありません。

例えば、

「インド映画の情報が載っているデータセットIndiaFilm.csvがある。このデータセットを開いて、一番人気の映画を特定したい、その次に平均値を知りたい。」

という操作を行うとします。

Pythonなどの場合、

「インド映画の情報が載っているデータセットIndiaFilm.csvがある。このデータセットを開いて、一番人気の映画を特定したい、その次に平均値を知りたい。」

という操作を一つのプログラムで行うこともできます。

MySQLでは、以下のように分解して命令する必要があります。

・IndiaFilm.csvを開く

・一番人気の映画を特定する

・平均値を計算する

こうやって細切れにしていかざるをおえないので、プログラミングに苦手意識のある人でもとっつきやすいでしょう。

MySQLは簡単な命令を適宜出すので難しくない

MySQLのコードを見てみよう

MySQLのコードが完結であることを紹介するためにコードを紹介していきます。

分からなくてもいいので、「短くて簡潔なんだな」という雰囲気が伝わればと思います。

データベースの作成(Inuという名前のデータベースを作成する。)

Python並みに命令と構文が同じで分かりやすい!

仮にNekoという名前のデータベースを作成する場合は、

と書きます。

【実行結果】

データセットの確認

今あるデータセットを一覧で確認するためには、

と命令します。

【実行結果】

ちゃんとinuがあります。

これから操作するデータセットを選択する

これからデータセットinuをいじりたいので、inuを選択します。

【実行結果】

選択されたデータベースがinuに代わりました。

今のままでは名前がついているだけの空のデータセットしかないので、テーブルを作成します。

今のイメージは何も入力していない新しいExcel Bookにinu.xlsxと名付けた状態です。

テーブルを作成

今回は以下のような値を持つ表を作っていきます。

インドの愛のバイブル「ラーマ―ヤナ」の人たちです。スコアは作中でカッコよかった順です。

特に深い意味はないので、ラクシュマンファンの人は怒らないでくださいね…!

Name Score
Ram 100
Lakshman 80
Rada 95

テーブルを作成します。

また一行目を追加します。

同様に二行目、三行目を追加します。

【実行結果】

一行目の追加

3行目間違えた…

表を見ます。

【実行結果】

間違えとるやんけ…

というわけで分かりやすくするために、3行目と4行目を削除して、そのあとでまた行を追加します。

条件に合う列の削除

今回は「nameがRadaの行」を削除します。

【実行結果】

2行消されています。

念のために表を確認します。

【実行結果】

RamとLakshmanだけになっています。

また行を挿入して、表を確認します。

【実行結果】

今度はちゃんと目的のものができています。

せっかく表を作ってみたので、少しデータで遊んでみましょう、というわけでとりあえず平均値を取得します。

平均値を取得してみよう

スコアの平均を取ります。

【実行結果】

平均91.6667点…!

それっぽくなってきて楽しいですね!!

 

いかがでしたか?

MySQLの構文はPython並みに実行することとコマンドが結びついているのでわかりやすいと思います。

またあまり複雑な文章が組めないので、複雑に考えずに、単純に単純にバラしていく癖をつけると操作しやすくなります。

難しいのはデータの扱い

MySQLは操作が難しいのではなく、データをどう扱ったら希望の結果が作成できるのだろうかという思考の部分が難しいです。

実際のデータは外れ値(異常値のようなもの)があるので、初めに立てた方針で解析をしてみてもいい結果が出ずに方針の変更を検討しなければならない場合もあります。

「何をすれば適切な分析結果を出せるのか、説得力の高い結果になるのか」が分からない、決まらないことがデータベースの難しい点です。(私が若手なこともありますが…)

ベテランのデータサイエンティストの方だと、「効率的に短い時間でデータを処理すること」も必ず考えて処理をしています。高々数千行でExcelでも扱いきれるようなデータセットは適当にやっても実行時間はたいして変わりませんが、数万行、数十万行、数億行のような複雑なデータセットになればなるほど処理時間の短さは大切なポイントになります。

まとめ

MySQLの操作がそんなに難しくないことを説明していきました。

始めは難しく感じるかもしれませんが、数をこなせばMySQLはすぐに習得することができます。

苦手意識を持たずに根気強く取り組んでみてくださいね。

BLOGコンテンツをパーソナライズします

あなたは現在「プログラミング学習者」ですか?