ホームページ >データベース >mysql チュートリアル >MySQL で空ではない列値を含む行を効率的に取得するにはどうすればよいですか?

MySQL で空ではない列値を含む行を効率的に取得するにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-12-26 22:40:30327ブラウズ

How to Efficiently Retrieve Rows with Non-Empty Column Values in MySQL?

MySQL での空でない列の値の取得

MySQL では、特定の列に空ではない値が含まれるレコードの選択は比較によって実現できます。空の文字列を使用します。

クエリ最適化:

次のクエリを考えます。

select phone, phone2
from jewishyellow.users
where phone like '813%'
and phone2

このクエリは、電話番号が '813' で始まり、phone2 が空ではない行を取得することを目的としています。ただし、最適化の問題があります。

最適化された解決策:

クエリを最適化するには、phone2 列を空の文字列と直接比較します:

select phone, phone2 
from jewishyellow.users 
where phone like '813%' and phone2<>''

<> を使用することにより、 (等しくない) 演算子を使用すると、クエリは NULL 値を含む行を含め、phone2 が空の行を除外します。このアプローチでは、NULL の評価を回避することでクエリのパフォーマンスが向上します。

注:

MySQL では NULL 値が false として解釈されることを覚えておくことが重要です。したがって、技術的にはデータが含まれている場合でも、クエリでは、phone2 が NULL 値を持つ行は取得されません。

以上がMySQL で空ではない列値を含む行を効率的に取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。