sql >> Database teknologi >  >> RDS >> Mysql

Mysql-forespørgsel til ElasticSearch

Du komplicerer tingene og prøver at passe til MySQL-konceptet i Elasticsearch. I dette tilfælde skal du definere din indekskortlægning korrekt (feltdatatyper og deres analysator baseret på søgekravene) og i overensstemmelse hermed opbygge dine forespørgsler.

Jeg har taget din prøve og ændrede ikke din indekskortlægning og prøvedokument, men ændrede søgeforespørgslen til at vise, hvordan den med dine eksisterende data og krav (virker muligvis ikke i alle tilfælde, men du får en idé) søgningen.

Søgeforespørgsel

{
    "query": {
        "multi_match": { --> note and read about multi_match query
            "query": "36695",
            "fields": [
                "address",
                "city_code", --> add more fields if you need to be
                "zip_code",
                "contact_no"
            ]
        }
    }
}

Søgeresultat bringer dit eksempeldokument:

 "hits": [
            {
                "_index": "so_mysql_dsl",
                "_type": "_doc",
                "_id": "1",
                "_score": 0.2876821,
                "_source": {
                    "promotion": null,
                    "image": null,
                    "name": "Port City Realty",
                    "city_code": "Mobile",
                    "services": null,
                    "promotion_exp_date": null,
                    "tuesdayopen": null,
                    "tuesdayclose": null,
                    "wednesdayopen": null,
                    "thursdayclose": null,
                    "@timestamp": "2020-03-13T15:44:45.330Z",
                    "date_updated": "2020-03-06T00:00:00.000Z",
                    "mondayopen": null,
                    "contact_no": "2516891228",
                    "id": 1941,
                    "fridayclose": null,
                    "featured": 0,
                    "main_cate": 1,
                    "wednesdayclose": null,
                    "sundayopen": null,
                    "state_code": "AL",
                    "video": null,
                    "address": "4826 Whispering Oaks Lane",
                    "user_id": null,
                    "slug": "2516891228-port-city-realty-mobile-al-36695",
                    "timezone": null,
                    "source": "USA Business",
                    "description": null,
                    "fridayopen": null,
                    "price": null,
                    "saturdayopen": null,
                    "saturdayclose": null,
                    "date_added": "2020-03-05T19:00:00.000Z",
                    "thursdayopen": null,
                    "@version": "1",
                    "status": 1,
                    "mondayclose": null,
                    "zip_code": "36695",
                    "private_contact": null,
                    "location_id": 0,
                    "sundayclose": null
                }
            }
        ]



  1. Sådan løses ORA-00900

  2. Hvordan tæller man varer pr. kategori?

  3. Hvordan kan jeg afgøre i SQL Server, om et dateTime-interval overlapper et andet

  4. Sådan bruges Bulk Collect-klausul med SELECT INTO-erklæring i Oracle-databasen