
はじめに
今回はNULL、ブランク、スペースの違いについて書かせていただきます。
新卒や未経験の子が区別つかずにごちゃ混ぜになっているのはまだ可愛げがあるけれど、PL・PMレベルの人が平気で半角ブランクとか仕様書に書くから困ったものです。 それでは順番に違いを書いていきます。
NULL
まずNULLは値が定義されていないということです。ブランクでも0でもスペースでもありません。分かりやすく例えるなら「何も存在していない」です。
ブランク
次にブランクです。ブランクは値が存在しないことです。0やスペースも存在していない状態です。プログラム中やSQLの文字列でブランクを表現する場合は""(ダブルクォーテーション2つ)だったり''(シングルクォーテーション2つ)します。NULLとは違って定義されているけれども値は無いということです。なので冒頭に上げた半角ブランクなどというものはこの世に存在しないのです。ブランクを分かりやすく例えるなら「値を入れる箱は存在しているが、中身は無い」状態です。
スペース
最後のスペースはおなじみのものです。空白ともいいますね。プログラム中やSQLの文字列では" "だったり' 'ですね。もちろん値が定義されており、半角、全角も区別します。
最後に
これらの要素は仕様書上でもそうですが、各言語でisBlank関数やisEnpty関数といった判定する関数を使用するときに言語ごとにどのような使用であるかをよく確認した上で使うようにしたほうが良いです。

![[Android]ActionBarにボタン(メニュー)を設置する](https://www.yukiiworks.com/wp-content/uploads/2019/04/android-300x219.jpg)
![[Laravel][mailtrap]Expected response code 354 but got code ''550'', with message ''550 5.7.0 Requested action not taken: too many emails per second ''エラーについて](https://www.yukiiworks.com/wp-content/uploads/2019/05/laravel-150x150.png)
![[Flutter]debugとreleaseビルドをコードから判別する方法](https://www.yukiiworks.com/wp-content/uploads/2020/08/flutter-150x150.png)
![[iOS13]SceneDelegateを使用したURL Schemeによるアプリ起動処理](https://www.yukiiworks.com/wp-content/uploads/2019/04/swift-150x150.png)

![[PHP]local.ERROR: compact(): Undefined variable:エラーについて](https://www.yukiiworks.com/wp-content/uploads/2019/06/php-150x150.jpg)
![[AndroidX対応]Error inflating class android.support.design.widget.BottomNavigationViewエラーについて](https://www.yukiiworks.com/wp-content/uploads/2019/04/android-150x150.jpg)
![[Python]tkinterのScrolledTextで末尾にスクロールさせる方法](https://www.yukiiworks.com/wp-content/uploads/2019/11/python-logo-150x150.png)
