sql >> データベース >  >> RDS >> Mysql

10kレコードのLIKE演算子を使用してmysqlクエリを最適化する

    最適化の1つは、exact この場合、LIKEを使用する必要はありません(ワイルドカード-%でのみ使用する必要があります)。

    処理を高速化するためにできるもう1つの方法は、検索するフィールドにINDEXを追加することです。

    また、(そのテーブルの)ストレージエンジンとしてMyISSAMを使用している場合にのみ、全文検索を使用できます。 このように

    SELECT * FROM normal WHERE MATCH(title、body)AGAINST('Queried_string')

    first_name LIKE '%S%'
    OR last_name LIKE '%S%'
    OR phone_number LIKE '%S%'
    OR mobile_number LIKE '%S%'
    OR email_address LIKE '%S%'
    OR address LIKE '%S%'
    OR organization LIKE '%S%'
    OR other LIKE '%S%'
    OR sector LIKE '%S%'
    OR designation LIKE '%S%' )
    

    プロセス全体にほとんど価値をもたらしていないようです。

    これがお役に立てば幸いです。



    1. Rails:マスター/スレーブデータベース間で書き込み/読み取りクエリを分割する方法

    2. SQL Server Management Studio(SSMS)でオブジェクトをフィルタリングする方法-SQL Server/TSQLチュートリアルパート19

    3. エラーコード1005、SQL状態HY000:テーブルを作成できませんerrno:150

    4. MySQL複数のテーブルに挿入しますか? (データベースの正規化?)