나는 ID와 텍스트 필드가 있습니다.정확히 일치하는/심지어 startingwith 단어가 작동하지 않는 문자열에서 단어를 검색
정확히 일치하는 단어를 검색하거나 단일 mysql 쿼리로 단어의 단어로 시작해야합니다.
예 : select * from tablename where textfield like "%cam%.
이렇게하면 cam에있는 텍스트 ID가 모두 단일 문자로 반환됩니다.
하지만 문장에서 한 단어를 분리하여 쿼리 할 수있는 결과를 얻어야합니다.
ID 텍스트
1 Camel_walk.
2 camel does drink water.
3 does Camel_store water.
4 In deset people can find_camel
5 this will not return
내가 먼저 select * from tablename where textfield like "%camel%.
반환 1,2,3,4
쿼리하지만 난 단어가 낙타로 시작하는 ID를 얻을 필요가있을 때
1)select * from tablename where textfield like "Camel%"
return 1,3 (which is not working for me)
or even
2)select * from tablename where textfield like "%Camel"
return 4
이 두 쿼리가 작동하지 않습니다. 도와 드릴 수 있습니까?
감사
''% Camel % "와 같은 텍스트가 1,3을 반환하는 tablename의 select id. 같은 연산자로 적절한 (또는 낙타) 케이스를 사용하면 검색이 대소 문자를 구분합니다. 일관성있는 대소 문자는 대/소문자를 구분하지 않습니다. – Fr0zenFyr
'tablename에서 select id, "% camel"과 같은 텍스트는 4를 반환합니다. 문자열의 경우 차이점을 확인하십시오.'tabelename에서 id를 선택하십시오. "% camel %"와 같은 텍스트는 1,2,3,4를 반환합니다. 'tablename에서 "camel %"와 같은 텍스트가'1을 반환합니다.''camel % "와 같은 텍스트가 1,2를 반환하는 tablename에서 id를 선택하십시오. 'tablename에서 "camel %"와 같은 텍스트가 2를 반환 할 id를 선택하십시오. – Fr0zenFyr
이것은 기본 SQL입니다. 약간 복잡한 SQL 문조차도 아닙니다. 내가 왜 cakephp와 같은 프레임 워크를 사용한다면 견고한 SQL 쿼리를 찾고 있을까? IMHO, 케이크에 하드 코딩 된 SQL을 사용하는 것은 현명하지 않습니다. – Fr0zenFyr