Mybatis mysql 1つの検索ボックスの複数のフィールドのあいまいなクエリー

907 ワード

検索ボックスに指定されたキーワードに基づいて、ユーザー名とアカウントが一致するユーザーの集合を曖昧に検索する

ただし、上記のクエリではuser_nameまたはuser_Accountのいずれかのプロパティのすべてのデータがnullの場合(たとえばaccountフィールドのすべての値に値が割り当てられていない、デフォルト値がnullの場合)、クエリーのデータが別のプロパティに含まれていてもデータはクエリーされません.
2つの解決方法:
1.nullの可能性のあるクエリーフィールドにデフォルト値、空の文字列、またはその他を設定します.
2.orを使用して複数のファジイクエリを接続する
AND CONCAT(user_name, user_account) LIKE CONCAT('%',#{searchParam},'%')

  

AND user_name like CONCAT('%',#{searchParam},'%')
or user_account like CONCAT('%',#{searchParam},'%')