ホームページ >データベース >mysql チュートリアル >MySQL で XML 列内の文字列を検索するにはどうすればよいですか?

MySQL で XML 列内の文字列を検索するにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-11-27 17:18:10598ブラウズ

How to Search for Strings Within XML Columns in MySQL?

MySQL の XML 列内の文字列一致の検索

MySQL では、テーブルに XML を含むさまざまな形式でデータが保存されることがよくあります。これらの XML 列内の特定の文字列を検索するには、適切な関数または演算子を使用することが不可欠です。

LIKE 演算子の使用

LIKE 演算子を使用して、基本的な文字列マッチング。たとえば、XML 列に文字列「123456」が含まれる行を検索するには、次のクエリを使用できます。

SELECT * FROM items WHERE items.xml LIKE '%123456%'

検索文字列の両側にある % ワイルドカードにより、部分一致が可能になります。

全文検索関数

より高度な文字列一致機能については、MySQL一連の全文検索機能を提供します。これらの関数は、インデックス作成技術を利用して、大規模なテキスト データ内での効率的な検索を容易にします。

そのような関数の 1 つは MATCH() です。これを AGAINST() 演算子と組み合わせて使用​​すると、完全一致または近似一致を検索できます。たとえば、XML 列に文字列 "123456" が完全一致として含まれる行を検索するには:

SELECT * FROM items WHERE MATCH(items.xml) AGAINST('"'123456'"' IN BOOLEAN MODE)

BOOLEAN モードでは、クエリは検索文字列が完全に一致する行を返します。

近似一致の場合は、IN NATURAL LANGUAGE MODE 修飾子を使用できます。このモードでは、同義語や単語の形式などの要素が考慮され、より柔軟な検索結果が提供されます。

LIKE 演算子または全文検索関数を利用することで、MySQL テーブルに格納されている XML 列内で一致する文字列を効果的に見つけることができます。

以上がMySQL で XML 列内の文字列を検索するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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