[解決済み】MySQLのSELECTは、NULL値でないもののみ。
2022-03-29 15:50:18
質問
NOT NULL値のみを受け取るselect文は可能ですか?
今、私はこれを使っています。
SELECT * FROM table
そして、phpのループでNULL値をフィルタリングする必要があります。
する方法はないでしょうか。
SELECT * (that are NOT NULL) FROM table
?
今、私が*を選択すると、val1,val2,val3,null,val4,val5,null,nullなどを得ますが、私はちょうど私の結果の中でnullではない値を取得したいです。これは、ループでフィルタリングすることなく可能ですか?
どのように解決するのですか?
を使用する必要があります。
IS NOT NULL
. (比較演算子
=
と
<>
はどちらも
UNKNOWN
と
NULL
を式の両脇に置く)
SELECT *
FROM table
WHERE YourColumn IS NOT NULL;
念のため、MySQL でも ヌル安全等号演算子 が、これは標準SQLではありません。
SELECT *
FROM table
WHERE NOT (YourColumn <=> NULL);
コメント反映のため編集しました。テーブルが第一正規形でない可能性があるようですが、その場合は構造を変更することで作業が容易になるかもしれません。他の方法もありますが...。
SELECT val1 AS val
FROM your_table
WHERE val1 IS NOT NULL
UNION ALL
SELECT val2
FROM your_table
WHERE val2 IS NOT NULL
/*And so on for all your columns*/
上記の欠点は、各カラムに対して1回ずつ何度もテーブルをスキャンしてしまうことです。これは、以下の方法で回避できるかもしれませんが、MySQLではテストしていません。
SELECT CASE idx
WHEN 1 THEN val1
WHEN 2 THEN val2
END AS val
FROM your_table
/*CROSS JOIN*/
JOIN (SELECT 1 AS idx
UNION ALL
SELECT 2) t
HAVING val IS NOT NULL /*Can reference alias in Having in MySQL*/
関連
-
[解決済み] MySQLを使用したパーセンタイル値の計算
-
[解決済み] ローカルマシンからリモートDBをmysqldumpする方法
-
[解決済み] MySQLで1つを除くすべての列を選択しますか?
-
[解決済み] SQL ServerでSELECTからUPDATEする方法とは?
-
[解決済み] MySQLでdatetimeとtimestampのどちらのデータ型を使用すべきですか?
-
[解決済み] MySQLでコマンドラインを使用してSQLファイルをインポートするにはどうすればよいですか?
-
[解決済み] SQLテーブルで重複する値を検索する
-
[解決済み] ...値に挿入する ( SELECT ... FROM ... )
-
[解決済み] MySQLでJoinを使った削除
-
[解決済み] CREATE TABLE を別途作成せずに SELECT 文で一時テーブルを作成する。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】mysqlが内部または外部のコマンド、操作可能なプログラムまたはバッチとして認識されない。
-
[解決済み】Fatal error: mysqldをrootで実行する方法は、マニュアルの「セキュリティ」セクションをお読みください。
-
[解決済み】mysqladmin: 'localhost'でのサーバーへの接続に失敗しました。
-
[解決済み] SQLキー、MUL vs PRI vs UNI
-
[解決済み] テーブルのストレージエンジンは修復をサポートしていません。InnoDB または MyISAM?
-
[解決済み] アプリでSSLを有効にしていない場合、AzureのMySQLサーバーへの接続に失敗するのはなぜですか?
-
[解決済み] SQL エラー - テーブルの定義が正しくありません; auto カラムは 1 つしか存在できません。
-
[解決済み] エラーコードです。1215. 外部キー制約を追加できません (外部キー)
-
[解決済み] MySQLから最後のN行を選択する
-
[解決済み] 日付の挿入時にエラーが発生しました - 日付の値が正しくありません。