teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

調整

2018/04/02 02:17

投稿

yambejp
yambejp

スコア117923

answer CHANGED
@@ -1,12 +1,19 @@
1
1
  $hoge="浜田 まさとし"
2
2
  なら考え方が逆です
3
3
  ```SQL
4
- where $hoge like concat('%',Firstname,'%')
4
+ where '$hoge' like concat('%',Firstname,'%')
5
- or $hoge like concat('%',Lastname,'%')
5
+ or '$hoge' like concat('%',Lastname,'%')
6
6
  ```
7
7
  ただし、あいまい検索をすると想定していない候補がヒットする
8
8
  可能性があるので気をつけて下さい
9
9
  (とくにor検索だとより多くヒットする可能性が高まります)
10
10
 
11
11
  ちゃんとやるなら$hogeをスペースで分割して、それぞれの値を
12
- Firstname、Lastnameに完全一致で検索するです
12
+ Firstname、Lastnameに完全一致で検索するか、FirstnameLastnameを
13
+ つないで処理するかでしょう
14
+
15
+ ```SQL
16
+ where '$hoge'=concat(Firstname,' ',Lastname)
17
+ ```
18
+ ※この場合$hogeのセパレータが半角スペースである必要があります
19
+ (全角スペースだとヒットしない)