Drupal has a core search module which should be sufficient for most of the drupal websites but in some cases, advanced search functionalities are needed such as additional filters, faceted search, range filters, custom sorts, integration with 3rd party platforms such as Apache Solr, etc.
If you are looking to create an advanced search feature for your drupal website then have a look at the below list of contrib modules that Drupal has to offer for creating an advanced search

Search API module provides a framework for easily creating searches on any entity known to Drupal, using any kind of search engine.

This module integrates Drupal with the Apache Solr search platform. Solr search can be used as a replacement for core content search and boasts both extra features and better performance.

The Facet API module allows site builders to easily create and manage faceted search interfaces.

This module provides a backend for the Search API that uses a normal database to index data. It is therefore a cheap and simple alternative to backends like Solr, but can also be a great option for larger sites if you know what you're doing.
This module alters the default search box in many ways. If you need to have options available like in advanced search, but directly in the search box, this module is for you.

Search API Solr Search module provides a Solr backend for the Search API module.

The Search API ranges module provides widgets for Search API range queries such as "jQuery UI min/max slider".
This project provides faceted search to the core Search module. It is an implementation of the Facet API, so display widgets and custom code can be reused by other modules that also integrate with Facet API.
Google Custom Search Engine (CSE) is an embedded search engine that can be used to search any set of one or more sites.