MySQL フルテキスト検索の中国語ソリューションとサンプルコード

MySQL フルテキスト検索の中国語ソリューションとサンプルコード

MySQL 全文検索中国語ソリューション

    最近、会社のプロジェクトで、データベースで中国語を検索する機能が必要になりました。これは非常に難しいです。インターネットで情報を検索したところ、同様の記事を見つけました。ここに記録して、皆さんのお役に立てれば幸いです。

コード例:

<?php
/*
MySQL全文検索中国語ソリューション!
*/
エラー報告(E_ERROR | E_WARNING | E_PARSE);
ini_set('display_errors', '1');
//データベースサポートクラス SaeMysql{
//phpmysql 操作クラス}
$DBS = 新しい SaeMysql;
// データを追加して echo '2' を返します。
/*データテーブルを作成する*/
$DBS->runSql('テーブルが存在しない場合は作成します`ces_articles` (
`id` mediumint(8) 符号なし NOT NULL AUTO_INCREMENT,
`title` varchar(255) COLLATE utf8_unicode_ci NOT NULL DEFAULT \'\',
`url` varchar(255) 文字セット utf8 COLLATE utf8_bin デフォルト NULL,
主キー (`id`)、
フルテキストキー `url` (`url`)
)ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci ROW_FORMAT=DYNAMIC');
/*データを追加*/
$title='皆さんを愛しています、こんにちは';
$DBS->runSql('`ces_articles` (id,title,url) に INSERT INTO VALUES (0,\''. $title.'\',\''.str_replace('\u','u',trim(json_encode($title))).'\')');
$title='中国とは何か';
$DBS->runSql('`ces_articles` (id,title,url) に INSERT INTO VALUES (0,\''. $title.'\',\''.str_replace('\u','u',trim(json_encode($title))).'\')');
$title='http://ask.1912news.com';
$DBS->runSql('`ces_articles` (id,title,url) に INSERT INTO VALUES (0,\''. $title.'\',\''.str_replace('\u','u',trim(json_encode($title))).'\')');
$title='質問と回答システム';
$DBS->runSql('`ces_articles` (id,title,url) に INSERT INTO VALUES (0,\''. $title.'\',\''.str_replace('\u','u',trim(json_encode($title))).'\')');
1912.com のコンテンツ
$DBS->runSql('`ces_articles` (id,title,url) に INSERT INTO VALUES (0,\''. $title.'\',\''.str_replace('\u','u',trim(json_encode($title))).'\')');
$title = '09 ネットワーク';
$DBS->runSql('`ces_articles` (id,title,url) に INSERT INTO VALUES (0,\''. $title.'\',\''.str_replace('\u','u',trim(json_encode($title))).'\')');
//検索:
$_GET['q']="中国";
'q' をエコーし​​ます。
if(isset($_GET['q'])){$sql=' match(url) against (\''.str_replace('\u','u',trim(json_encode($_GET['q']))).'\' IN BOOLEAN MODE)';}
$query = $DBS->getData('SELECT * FROM `ces_articles` where '.$sql.' LIMIT 10');
'q' をエコーし​​ます。
if($クエリ){
foreach ($query を $article として){
$article['id']をエコーし​​ます。
}
}

?>

読んでいただきありがとうございます。お役に立てれば幸いです。このサイトをサポートしていただきありがとうございます。

以下もご興味があるかもしれません:
  • MySQL 5.7 での中国語全文検索の詳細な分析
  • 全文検索とキーワードスコアリング方式のMySQL実装例
  • MySQL全文検索の使用例
  • MySQL 5.7.25 全文検索チュートリアル

<<:  Vue での this.$set の動的データバインディングのケーススタディ

>>:  DockerとFastDFSのインストールコマンドと使い方の詳しい説明

推薦する

フレームウィンドウ間の関連付けとハイパーリンクのターゲット属性の使用を実装する方法

フレーム ウィンドウの関連付けを実現するには、次に示すように、ハイパーリンクの「ターゲット」ウィンド...

MySQL 関数インデックス最適化ソリューション

MySQL を使用する場合、多くの開発者は一部の列に対して関数計算を実行することが多く、その結果、イ...

Vue+Element UIはドロップダウンメニューのカプセル化を実現します

この記事の例では、ドロップダウンメニューのカプセル化を実装するためのVue + Element UI...

MySQLがデータの削除を推奨しない理由

目次序文InnoDB ストレージ アーキテクチャInnodb テーブルスペースインドストレージディス...

CentOS 7 で rpm パッケージを使用して MySQL 5.7.18 をインストールする

最近、MySQL を使っています。Linux での mysql-installation という記事...

React onClickにパラメータを渡す問題について話しましょう

背景下のようなリストでは、削除ボタンをクリックすると削除操作を実行する必要があります。 リスト生成:...

SQLはLeetCodeを実装します(180.連続した数字)

[LeetCode] 180. 連続した数字少なくとも 3 回連続して出現するすべての数字を検索す...

SQL効率を分析する方法を説明する

Explain コマンドは、データベースのパフォーマンス問題を解決するために最初に推奨されるコマンド...

個人的な意見: デザインについて語る

<br />最も実用的なものを選んで話しましょう。まず、勤務先の都市を慎重に選ぶ必要があ...

Vueの子コンポーネントが親コンポーネントのメソッドを呼び出す場合の詳細な説明

1. 子コンポーネントのthis.$parent.eventを通じて親コンポーネントメソッドを直接呼...

jQuery の CSS スタイル属性 css() と width() の完全ガイド

目次1. css() の基本的な使用法: 1.1 CSSプロパティを取得する1.2 CSSプロパティ...

VueのSSRサーバーサイドレンダリング例の詳細な説明

サーバーサイドレンダリング (SSR) を使用する理由検索エンジンのクローラーが完全にレンダリングさ...

よく使われるシングルページアプリケーションウェブサイト共有

CSS3お願いしますこのウェブサイトを自分で見て、パラメータを変更し、CSS3効果をオン/オフにする...

Vue.jsの機能コンポーネントに関する包括的な理解

目次序文React 関数コンポーネントVue (2.x) の機能コンポーネント🌰 例: el-tab...

位置固定オフセット問題を解決する方法の詳細な説明

質問CSS 固定配置の position:fixed は非常に使いやすいです。ブラウザのビューポート...