개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.07.30 20:36

SolrClient::deleteById 함수에 대한 질문

목록
  • 백엔드버서커 21시간 전 2025.07.30 20:36 새글
  • 2
    1
내가 사용 중인 Elasticsearch API를 통해 SolrClient::deleteById 함수를 사용하여 특정 도큐먼트를 삭제하려고 합니다. 하지만 이 함수의 파라미터 중 'id'의 의미가 조금 혼란스럽습니다. 'id'는 도큐먼트의 식별자로 사용하는 것이 맞는지, 아니면 도큐먼트의 ID 필드의 이름을 지정하는 것인지 궁금합니다.

또한 이 함수를 사용하여 여러 도큐먼트를 한 번에 삭제하는 방법을 알고 싶습니다. 현재는 하나의 도큐먼트를 삭제하는 방법만 알고 있습니다.

이 함수의 사용법과 파라미터에 대한 더 자세한 정보를 부탁드립니다.

    댓글목록

    profile_image
    나우호스팅  21시간 전



    SolrClient::deleteById 함수의 파라미터 중 'id'는 도큐먼트의 식별자로 사용하는 것입니다. 이 식별자는 도큐먼트의 ID 필드의 이름이 아닌 도큐먼트의 고유 식별자입니다.

    다음은 여러 도큐먼트를 한 번에 삭제하는 방법입니다.

    1. 여러 도큐먼트의 ID를 배열로 생성합니다.
    2. SolrClient::deleteById 함수에 배열을 전달합니다.

    예를 들어, 다음과 같이 사용할 수 있습니다.

    #hostingforum.kr
    php
    
    $ids = array('doc1', 'doc2', 'doc3');
    
    $solrClient->deleteById($ids);
    
    


    또한, 여러 도큐먼트를 한 번에 삭제하는 또 다른 방법은 다음과 같습니다.

    1. SolrClient::deleteByQuery 함수를 사용하여 특정 쿼리에서 일치하는 도큐먼트를 삭제합니다.

    예를 들어, 다음과 같이 사용할 수 있습니다.

    #hostingforum.kr
    php
    
    $solrClient->deleteByQuery('id:doc1 OR id:doc2 OR id:doc3');
    
    


    이 방법은 쿼리에서 일치하는 도큐먼트를 삭제하므로, ID 필드가 아닌 다른 필드를 사용하여도 가능합니다.

    2025-07-30 20:37

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 40,358건 / 2 페이지

검색

게시물 검색