Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Truy vấn Mysql tới ElasticSearch

Bạn đang phức tạp hóa mọi thứ và cố gắng phù hợp với khái niệm MySQL trong Elasticsearch, Trong trường hợp này, bạn cần xác định đúng cách ánh xạ chỉ mục của mình (các loại dữ liệu trường và trình phân tích của chúng dựa trên các yêu cầu tìm kiếm) và theo đó xây dựng các truy vấn của bạn.

Tôi đã lấy mẫu của bạn và không thay đổi ánh xạ chỉ mục và tài liệu mẫu của bạn, nhưng đã thay đổi truy vấn tìm kiếm để hiển thị, cách thức với dữ liệu và yêu cầu hiện có của bạn (có thể không hoạt động trong mọi trường hợp, nhưng bạn có ý tưởng) nó có thể mang lại tìm kiếm.

Truy vấn tìm kiếm

{
    "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"
            ]
        }
    }
}

Kết quả tìm kiếm mang đến tài liệu mẫu của bạn:

 "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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tại sao STRAIGHT_JOIN lại cải thiện đáng kể truy vấn này và nó có ý nghĩa gì khi nó được viết sau từ khóa SELECT?

  2. Cách kiểm tra phiên bản MySQL của bạn

  3. Truy vấn SQL nhiều bảng, với nhiều phép nối và trường cột với danh sách được phân tách bằng dấu phẩy

  4. Sự cố khi đọc / ghi dữ liệu UTF-8 trong MySQL từ Java bằng cách sử dụng trình kết nối JDBC 5.1

  5. Lưu trữ tên hàm trong cơ sở dữ liệu và sau đó thực thi nó