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 バックエンドを使用して、一定期間内のデータをクエリする方法
Linuxでyumを入力すると、プロンプトが表示されます: -bash: /usr/bin/yum:...
序文Oracle であれ MySQL であれ、新バージョンで導入された新機能は、一方では製品の機能性...
1. MySQLに接続するフォーマット: mysql -h ホストアドレス -u ユーザー名 -p ...
プログラムは上から下へ順番に実行され、いくつかの制御文によって実行経路を変更することができます。制御...
この効果と同様に、方法も非常に簡単です。ヘッダーに次のように記述します: <link rel=...
鏡とは何ですか?イメージは、複数のイメージ レイヤー (UnionFS および AUFS ファイル ...
最初に書くこの記事では、ELK 7.3.0 の展開についてのみ説明します。展開環境:システムセントO...
目次1. 背景知識1. ARM64レジスタの紹介2. STP命令の詳しい説明(ARMV8マニュアル)...
目次背景: Nginx スムーズ アップグレード ソリューションフォールバック手順要約する背景:負荷...
Linux に zip 解凍機能をインストールする通常、 zip コマンドは Linux サーバーに...
まずは適用方法を説明します。nginxモジュールにはjtxyとjtcmdの2つがあります。 http...
vue2 プロジェクト開発の経験があれば、$refs に精通しているでしょう。 vue3 の急激なア...
これが何を意味するのかを理解するには、まずサブディレクトリとは何かを知る必要があります。では、サブデ...
背景:最近、同社のプロジェクトは同時実行のプレッシャーに耐えられないようなので、最適化が差し迫ってい...
時には、画像上に複数の領域を設定する必要があります。マウスで画像のさまざまな領域をクリックしてさまざ...