MySQL を使用してデータベースをクエリし、左結合を実行すると、関連付けられたフィールドの一部にNULLコンテンツが含まれます。そのため、レコード セットを取得した後、NULL データを変換する必要があります。 この記事では、クエリ時に直接変換処理を実行する方法について説明します。取得したレコード セットを再度変換する必要はありません。 mysqlはIFNULL関数を提供する IFNULL(式1, 式2) IFNULL() は、expr1 が NULL でない場合は expr1 を返し、それ以外の場合は expr2 を返します。 例: ユーザーテーブルの構造とデータ +----+-----------+ | ID | 名前 | +----+-----------+ | 1 | アビー | | 2 | デイジー | | 3 | クリスティン | +----+-----------+ user_lastlogin テーブルの構造とデータ +-----+---------------+ | uid | 最終ログイン時刻 | +-----+---------------+ | 1 | 1488188120 | | 3 | 1488188131 | +-----+---------------+ ユーザー名と最終ログイン時間を照会する mysql> a.id、a.name、b.lastlogintime を user から a として選択し、 user_lastlogin を b として a.id=b.uid に結合します。 +----+-----------+---------------+ | ID | 名前 | 最終ログイン時刻 | +----+-----------+---------------+ | 1 | アビー | 1488188120 | | 2 | デイジー | NULL | | 3 | クリスティン | 1488188131 | +----+-----------+---------------+ id=2 のユーザーは一度もログインしたことがないため、user_lastlogin テーブルにはレコードがありません。したがって、lastlogintime は NULL です。 IFNULLを使用してNULLを0に変換する IFNULL(最終ログイン時間, 0) mysql> a.id、a.name、IFNULL(b.lastlogintime、0) を lastlogintime として選択し、user を a として左から join user_lastlogin を b として a.id=b.uid に結合します。 +----+-----------+---------------+ | ID | 名前 | 最終ログイン時刻 | +----+-----------+---------------+ | 1 | アビー | 1488188120 | | 2 | デイジー | 0 | | 3 | クリスティン | 1488188131 | +----+-----------+---------------+ 上記のMySQLのNULLデータ変換に関する記事(必読)は、編集者が皆さんと共有する内容のすべてです。参考になれば幸いです。また、123WORDPRESS.COMを応援していただければ幸いです。 以下もご興味があるかもしれません:
|
>>: Vue フロントエンドと Django バックエンドを使用して、一定期間内のデータをクエリする方法
Dockerはプライベートレジストリ内のイメージを照会または取得するために、 docker 検索 1...
Awk は、ソートを含む他の一般的なユーティリティによって実行できるいくつかのタスクを実行できる強...
目次序文プロトタイプ継承アドバンテージ欠点コンストラクタの継承アドバンテージ欠点組み合わせ継承寄生的...
ページング効果は、参考までにvueプロジェクトに実装されています。具体的な内容は次のとおりです。 1...
導入振り返ってみると、4年前、私がMySQLのインデックスについて学んでいたとき、先生はインデックス...
導入MySQL には、SELECT ステートメントを分析し、開発者が最適化できるように SELECT...
効果画像:実装コードは以下のとおりですビュー <canvas id="radar-c...
この記事では、例を使用して、MySQL 累積集計の原理と使用方法を説明します。ご参考までに、詳細は以...
1. 環境要件1. Docker 17以上がインストールされている2. コンテナ操作docker r...
1. Canvas画像をCSS背景画像として使用するCSS ペイント API は、Canvas キャ...
目的カルーセルコンポーネントをカプセル化して直接使用します。具体的な内容は以下のとおりです。一般的な...
この記事では、Ubuntu 18.04 に Redis と phpredis 拡張機能をインストール...
目次2. 詳しい説明2.1. asyncRoutesルーティングを追加する2.2. 新しいpermi...
Visual Studio Code の最新の Insider バージョンには、コードのリモート デ...
HTML メタタグHTML メタタグは、Web ページのコンテンツに関する情報をブラウザや検索エンジ...