MySql Nullフィールド判定とIFNULL失敗処理ps: (プロセスを表示したくない場合は、SQL の外側に選択を追加するだけです) select a,b,c from table group by a,b,c //このとき、a,b,cがnullと判定されても問題ありません。select IFNULL(a,0),IFNULL(b,0),IFNULL(3,0) from (テーブルから a,b,c を選択し、 a,b,c でグループ化) //これで完了です この非常にシンプルな表を見てみましょう。 SQL文を使用してPIDでグループ化し、列を行に変換すると、結果は次のように表示されます。 IFNULL(SID1,0) や IF( SID1 is null,0,SID1) をどのように表示しても、結果は NULL のままです -.-! 無力感を感じます。 私のSQLはこのように書かれています。MAX関数を使用していない場合は無視してIFNULLだけを見てください。IFNULLを追加したことは明らかです。 選択 PID、 MAX(SID = 1 の場合、IFNULL(PNUM ,0) END) AS SID1、 MAX(SID = 2の場合、IFNULL(PNUM,0)END) AS SID2、 MAX(SID = 3 の場合、IFNULL(PNUM ,0) END) AS SID3 から ( 選択 PID、 SUM(PNUM) PNUM、 シド から あ グループ化 ピジョン )温度 グループ化 温度.PID しかし、結果はまだ NULL であることに気付きました。次に、IFNULL() が null の場合、対応するフィールドがテーブルに存在し、NULL であることしか判断できないことがわかりましたが、明らかに私のテーブルにはそのようなフィールドがないため、判断できません。 選択後、クエリ内のNULL値はmysqlのis nullおよびIFNULL()では認識されません。 ここまで言っておきましたが、どうやって解決すればいいのでしょうか?とても簡単です。時計を持っていないなら、ただ買うだけです! (新しいテーブルを作成しますか?) 何を考えていますか? まず、クエリ内の IFNULL を削除します。効果はありません。 次に、SELECT ステートメントを使用して、結果セットをテーブルとしてクエリします。これは、クエリ対象のテーブルにフィールドが存在し、値が NULL であることに相当します。 選択 PID、IFNULL(SID1,0) SID1、IFNULL(SID2,0) SID2、IFNULL(SID3,0) SID3 から ( 選択 PID、 MAX(SID = 1 の場合 PNUM END) AS SID1、 MAX(SID = 2 の場合 PNUM END) AS SID2、 MAX(SID = 3 の場合、PNUM END) AS SID3 から ( 選択 PID、 SUM(PNUM) PNUM、 シド から あ グループ化 ピッド )温度 グループ化 温度.PID ) 一時1 ほら、結果が出ましたよハハハハ~ MySql で IFNULL() を使用する際に発生する問題ifnull() 関数についてIFNULL(a,b) c aがnullでない場合、cの値はaである。 aがnullの場合、cの値はbになります。 実際の使用で遭遇した問題IFNULL(a,b) c a が null ではなく、空の文字列 ' ' である場合、c の値は空の文字列になります。 実際に望ましい結果は、a が空の文字列または null であり、c の値が b であることです。 解決代わりにif()関数を使用してください if(a ='' または a が null,b,a) c つまり、a が null または空の文字列の場合は c=b、それ以外の場合は c=a になります。 上記は私の個人的な経験です。参考になれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
>>: HTML におけるブロックコメントの使用に関する詳細な紹介
この文書はMySQL Server 8.0.3のインストールと設定方法を参考のために記録したものです...
この記事では、MySQL テーブル データのインポートおよびエクスポート操作について説明します。ご参...
多くの場合、画像を表示する<a>タグのスタイルに遭遇しますが、タグ内にテキストがあり、そ...
コンテンツスキャフォールディングを使用してノードプロジェクトを素早く構築するデータベースとやり取りす...
MySQLサーバーは--skip-grant-tablesオプションで実行されているため、このステー...
私は長い間 CSS を使用してきましたが、Web 要素の関連属性を設定するために常に「px」を使用し...
目次1. 算術演算子2. 比較演算子3. 論理演算子4. ビット演算子5. 演算子の優先順位1. 算...
目次序文1. リクエストをキャンセルする方法2. 重複リクエストの判定方法3. 繰り返しリクエストを...
MongoDBインストールYumを使用してインストールすることを選択する1. repoファイルを作成...
React は Facebook の社内プロジェクトとして始まりました。 React の出現は革命的...
プロジェクトシナリオ: 1. アップロードファイルの制限関数: 1. フロントエンド操作による異常な...
目次1. 需要2. 解決策3. 最初の改善4.砂糖を加える5. 理解不能6. 問題点7. オブジェク...
表示する svg 画像を追加すると、React はファイルが見つからないというメッセージを表示します...
目次特徴保存戦略自己増加の決定自動増分値の変更実行プロセス問題点自動増分ロックロック戦略バッチ挿入の...
追加説明、外部キー: 外部キーを使用しないでください。すべての外部キーの概念はアプリケーション層で解...