작성
·
253
0
조회 API 만들 때 검색 기능까지 만들고 싶은데
구글링해보니까
쿼리문에서
SELECT * FROM '테이블' where '컬럼' like concat('%', ?, '%');
를 이용하던데, 이렇게 하니까 error 메시지가 표시되더라구요!
혹시 검색 기능을 만들 땐 어떻게 해야 할지 조언 해주실 수 있을까요? ㅜㅜ
+) mybatis를 설치해서 사용하는 것같기도 한데 MYSQL 완전 초보라서, 다른 프레임워크 설치 없이 할 수 있는 방법이 있을까요? 없다면, 최선은 mybatis를 설치해서 하는 것인지 궁금합니다ㅜㅜ
강의 내용에서 조금은 벗어난 질문인 것같아 죄송하지만 조언 해주시면 너무너무 감사하겠습니다!
답변 1
0
안녕하세요.
간단한 검색 기능은 쿼리로 구현 가능합니다.
SELECT * FROM '테이블' where '컬럼' like concat('%', ?, '%');
위 쿼리는 like 기능을 사용해서 특정 문자열을 포함한 데이터를 뽑아내는 작업입니다.
제 기억으로는 workbench에서는 위 쿼리가 '?' 때문에 에러를 발생시키지만 실제 express 상에서는 문제 없이 동작하던 것으로 기억합니다.
따라서 문자열 포함 검색기능은 해당 쿼리를 활용해주시면 되겠습니다.
간단하고 전통적인 검색 방법으로, 검색 조건에 (작성자+내용), (내용), (작성자) 이런식으로 분기 처리를 해서 서로 다른 쿼리를 돌려주셔도 괜찮을 것 같습니다.
그 외에 검색은 전문 분야가 있을 정도로 기능과 목적에 따라 그 구현 방법이 천차만별입니다.
검색에 대해 궁금하시다면 구글의 페이지랭크 알고리즘에 대해서 조사해보시면 도움이 될 것 같습니다.
감사합니다.