MySQLデータベースのnullに関する知識ポイントのまとめ

MySQLデータベースのnullに関する知識ポイントのまとめ

MySQL データベースでは、null は一般的な状況です。MySQL での null に関する注意事項は何ですか?以下は簡単な要約であり、後ほど補足します。

1. は null です

まず、データベース内の列の値が null かどうかを判断します。null かどうかを判断するために equals を使用することはできません。is を使用する必要があります。たとえば、user_name が null であるユーザーから * を選択するか、user_name が null ではないユーザーから * を選択するが、user_name = null であるユーザーから * を選択することはできない。

2. ISNULL()

ISNULL() 関数は MySQL データベースに組み込まれており、その使用方法は MySQL で提供される sum() などの他の組み込み関数と同じです。たとえば、user_name = 'Demrystv' の users から select ISNULL(user_name) を選択すると 0 が返され、select ISNULL(NULL) を選択すると 1 が返されます。

3. IFNULL()

MySQL データベースには IFNULL() 関数が組み込まれており、その使い方は MySQL で提供される sum() などの他の組み込み関数と同じです。主に 2 つのパラメータを受け取ります。最初のパラメータは null と判断されるフィールドまたは値であり、2 番目のフィールドは最初のパラメータが null の場合に返される別の値です。つまり、最初のフィールドが null の場合、別の値に置き換えられます。たとえば、IFNULL(NULL, "java is the best language of the world") を選択すると、最初のパラメータの値が NULL であるため、2 番目のパラメータの値である java is the best language of the world が出力されます。同様に、最初のフィールドが空でない場合は、最初のフィールドの値が返されます。

4. 挿入してnullにする

insert into を使用してテーブルにデータを入力する場合、まずテーブルが null または空であるかどうかを確認する必要があります。null の場合、insert into を使用してデータを入力することはできず、update を使用する必要があります。これは単純なことのように思えますが、実際の開発では見落とされがちなので、特別な注意が必要です。

例:

テスト テーブルを作成します。colA には null 値を格納できませんが、colB には null 値を格納できます。

テーブル「test」を作成します(
`colA` varchar(255) NOT NULL,
`colB` varchar(255) デフォルト NULL
)ENGINE=InnoDB デフォルト文字セット=utf8;

以上が今回ご紹介した関連知識の全てとなります。123WORDPRESS.COMをご活用いただき、誠にありがとうございます。

以下もご興味があるかもしれません:
  • PHP の基本: MySQL データベースへの接続とデータのクエリ
  • PHP で MySQL データベースに接続して操作する基本的なチュートリアル
  • MySQL 基本データベース作成
  • MySQL 8.0.15 インストール グラフィック チュートリアルとデータベースの基礎
  • MySQL データベースの基本コマンド (コレクション)
  • 非常に包括的なMysqlデータベース、データベーステーブル、データの基本操作メモ(コードを含む)
  • MySQL データベースの基本ノート
  • MySQLデータベースのリアルタイムバックアップの知識ポイントを詳しく解説
  • Node.jsによるMySQLデータベースへの接続と基礎知識のポイントを詳しく説明
  • MySQLデータベースの基礎知識と操作のまとめ

<<:  Docker で SVN サーバーを構築するチュートリアル

>>:  jsは水平および垂直スライダーを実現します

推薦する

Win10 での MySQL 8.0 ログインでユーザー 'root'@'localhost' のアクセスが拒否される (パスワード使用: YES) 問題の解決方法

最近、MySQL を学び始めました。インストールはスムーズに進み、インターネット上の既成のチュートリ...

オンデマンドで Vue コンポーネントを自動的にインポートする方法

目次グローバル登録部分登録ローカル自動登録さまざまなソリューションの比較コンポーネント名について参照...

HTML CSS3は画像表示効果を引き伸ばさない

1. transform 属性を使用して、画像を拡大せずに表示します (パスの問題は必要に応じて修正...

Nginx サーバーが Systemd カスタム サービス プロセス分析を追加

1. nginxを例に挙げるyumコマンドを使用してNginxをインストールしましたSystemd ...

MYSQLデータベースの最適化段階を簡単に理解する

導入面接官がこんな質問をしたことはありませんか?データベースをどのように最適化しますか?では、この質...

Brotli圧縮アルゴリズムを有効にするNginxの実装プロセスの詳細な説明

序文Web アプリケーションでは、トラフィックを節約し、転送データのサイズを縮小し、転送効率を向上さ...

スライドによるページめくり効果とクリックイベント問題をモバイル端末上で実装する

前述のこの記事はとても短いです〜主な目的は、モバイル端末上のクリックと js イベントのメカニズムに...

Linux 編集の開始、停止、再起動の Springboot jar パッケージ スクリプトの例

序文springboot設定ファイルでは、設定ファイルの名前には独自の意味と用途があります。 dev...

MacでMysqlのルートパスワードを忘れた場合の解決方法

長い間コンピューターで mysql を使用していなかったので、パスワードを忘れてしまいました。でも、...

MySql5.x を MySql8.x にアップグレードする方法と手順

MySQL 5.x と MySQL 8.0.X のいくつかの違いapplication.proper...

Window.nameはクロスドメインデータ転送の問題を解決します

<br />原文: http://research.microsoft.com/~hel...

最新の高品質な英語無料フォント36個を公開

01. 無限フォントのダウンロード02. バンダフォントのダウンロード03. ロールアップフォントの...

有名なウェブサイトのロゴに使われている25種類のフォントのコレクション

この記事では、25 の有名な Web サイト (Google、Yahoo、Twitter、Digg ...

最も完全なpackage.json分析

目次1. 概要2. 名前フィールド3. バージョンフィールド4. 説明フィールド5. キーワードフィ...

Windows 7 の mysql6.x で中国語の文字化けが発生する問題に対する完璧な解決策

1. コマンドラインでMySQLサービスを停止します: net stop mysql stop my...