当前位置: 首页 > news >正文

网站设计的趋势免费二级域名生成网站

网站设计的趋势,免费二级域名生成网站,网页设计视频网站建设,网站平台建设哪家公司好先简单介绍一下这个sql查询,因为社区一直反馈这个Query DSL 实在是太难用了。大家可以感受一下下面这个es的查询。 GET /my_index/_search { “query”: { “bool”: { “must”: [ { “match”: { “title”: “search” } }, { “bool”: { “should”: [ { “te…

先简单介绍一下这个sql查询,因为社区一直反馈这个Query DSL 实在是太难用了。大家可以感受一下下面这个es的查询。

GET /my_index/_search
{
“query”: {
“bool”: {
“must”: [
{ “match”: { “title”: “search” } },
{
“bool”: {
“should”: [
{ “term”: { “category”: “books” } },
{ “term”: { “category”: “music” } }
]
}
}
],
“filter”: {
“range”: {
“price”: { “gte”: 20, “lte”: 100 }
}
}
}
},
“aggs”: {
“avg_price_per_category”: {
“terms”: {
“field”: “category”,
“size”: 10
},
“aggs”: {
“avg_price”: {
“avg”: {
“field”: “price”
}
}
}
}
}
}
这个查询使用了bool查询来组合多个条件,包括must、should和filter。同时也包含了聚合(aggs)来计算不同类别的平均价格。对于业务查询来讲,这个查询很普通。但是还是很难理解,特别是对于新手来讲,更难记了,很容易出错。

如果是mysql的查询,就是这么写

SELECT title, category, price
FROM my_index
WHERE (title = ‘search’ AND (category = ‘books’ OR category = ‘music’))
AND price >= 20 AND price <= 100
GROUP BY category
ORDER BY AVG(price) DESC
LIMIT 10
mysql 的查询就很简洁明了,看起来更舒服,后续维护也更方便。

既然都是查询,为啥不兼容一下mysql的语法呢,像很多工具现在都是兼容mysql的语法,比如说hive,starrocks,flink等 等,原因就是因为mysql的用户多,社区活跃。还有一个原因就是因为mysql的语法比较简单,容易理解。所以ElasticSearch 官方ElasticSearch 从 6.3.0 版本也开始支持 SQL 查询了,这就是一个喜大奔普的事情了,哈哈。

下面是官方的文档和介绍,大家可以看看 www.elastic.co/guide/en/el…

2.准备环境
大家在ES官网下载一下ES 启动就可以了,注意的是ES 需要JDK环境,然后就是需要在6.3.0以上的版本。 www.elastic.co/cn/download…

建议也下载一下kibana

我这边下载的是7.15.2版本

3.搞起
创建一个索引 my_index

PUT /my_index
{
“mappings”: {
“properties”: {
“title”: { “type”: “text” },
“category”: { “type”: “keyword” },
“price”: { “type”: “float” }
}
}
}
插入一些数据

POST /my_index/_doc/1
{
“title”: “ES学习手册”,
“category”: “books”,
“price”: 29.99
}

POST /my_index/_doc/2
{
“title”: “on my way”,
“category”: “music”,
“price”: 13.57
}

POST /my_index/_doc/3
{
“title”: “Kibana中文笔记”,
“category”: “books”,
“price”: 21.54
}
传统的查询所有

GET /my_index/_search
{

}
返回的是文档的格式

如果用sql 查询

POST /_sql?format=txt
{
“query”: “SELECT * FROM my_index”
}
返回的是类似数据库的表格形式,是不是写起来更舒服呢。

分页limit
POST /_sql?format=txt
{
“query”: “SELECT * FROM my_index limit 1”
}

和mysql 一样没啥,很简单。

order by 排序
POST /_sql?format=txt
{
“query”: “SELECT * FROM my_index order by price desc”
}

group by 分组
POST /_sql?format=txt
{
“query”: “SELECT category,count(1) FROM my_index group by category”
}

SUM 求和
POST /_sql?format=txt
{
“query”: “SELECT sum(price) FROM my_index”
}

where
POST /_sql?format=txt
{
“query”: “SELECT * FROM my_index where price = ‘13.57’”
}

看看是不是支持时间的转换的处理,插入一些数据

POST /my_index/_doc/4
{
“title”: “JAVA编程思想”,
“category”: “books”,
“price”: 21.54,
“create_date”:“2023-11-18T12:00:00.123”
}

POST /my_index/_doc/5
{
“title”: “Mysql操作手册”,
“category”: “books”,
“price”: 21.54,
“create_date”:“2023-11-17T07:00:00.123”
}
时间转换为 yyyy-mm-dd 格式

POST /_sql?format=txt
{“query”: “SELECT title, DATETIME_FORMAT(create_date, ‘YYYY-MM-dd’) date from my_index where category= ‘books’” }

时间加减

POST /_sql?format=txt
{“query”: “SELECT date_add(‘hour’, 8,create_date) date from my_index where category= ‘books’” }

字符串拆分

POST /_sql?format=txt
{
“query”: “SELECT SUBSTRING(category, 1, 3) AS SubstringValue FROM my_index”
}

基本上mysql 能查的 es sql 也能查,以后查询ES 数据就很方便的,特别是对于做各种报表的查询。像这样。

一般对于这种报表,返回的数据都是差不多json数组的格式。而对于es sql,查询起来很方便

[
{
“data”: “5”,
“axis”: “总数”
},
{
“data”: “0”,
“axis”: “待出库”
},
{
“data”: “0”,
“axis”: “配送中”
},
{
“data”: “5”,
“axis”: “已签收”
},
{
“data”: “0”,
“axis”: “交易完成”
},
{
“data”: “0”,
“axis”: “已取消”
},
{
“data”: “5”,
“axis”: “销售”
}
4.总结
ES SQL查询的优点还是很多的,值得学习。使用场景也很多

简单易学:ES SQL查询使用SQL语法,对于那些熟悉SQL语法的开发人员来说,学习ES SQL查询非常容易。
易于使用:ES SQL查询的语法简单,易于使用,尤其是对于那些不熟悉Query DSL语法的开发人员来说。
可读性强:ES SQL查询的语法结构清晰,易于阅读和理解。
5.最后附上相关链接
ES 官方下载
www.elastic.co/cn/download…

ES sql文档 www.elastic.co/guide/en/el…

http://www.ds6.com.cn/news/270.html

相关文章:

  • 做网站反复修改百度拉新推广平台
  • 做网站的用什么主机好自助建站系统下载
  • 郑州网站建设规划免费建站平台哪个好
  • 做产品网站设计应该注意什么seo咨询推广
  • 郑州网站建设搜q.479185700关键词有哪几种
  • 做网站测试心得最好的网站推广软件
  • 深圳建站公司告诉你十个建站步骤石家庄学院
  • 做网站需要的法律知识百度竞价排名技巧
  • 给企业做网站的公司有哪些重庆seo优化效果好
  • 做礼品的网站抖音黑科技引流推广神器
  • 过年做那些网站致富网站排行榜前十名
  • 深圳龙岗建网站怎样免费制作网页
  • 2024微信最新版本下载百中搜优化软件靠谱吗
  • 做一个平台网站要多少钱seo短视频入口引流
  • 广西建设厅考试网站首页百度推广助手app下载
  • 用dedecms织梦做中英文网站杭州做搜索引擎网站的公司
  • 网站制作论文总结在线刷seo
  • 中国做b2b外贸的网站有哪些如何自己建一个网站
  • 中国建设工程协会网站谷歌优化排名公司
  • 桃城网站建设广州代运营公司有哪些
  • 网站建设公司 枫子伽叩南京seo优化公司
  • 网站设计实施方案三门峡网站seo
  • 景德镇网站建设哪家最好百度sem竞价
  • 狮城app更多网站模板式自助建站
  • 湖南做网站磐石网络案例站长统计网站大全
  • 北京网站设计外包公司厦门百度竞价
  • 网站如何做信息表国家培训网官网
  • wordpress 返回列表网站推广关键词排名优化
  • 营销型网站百度网盘提取码入口
  • b2b网站有那些长沙网站排名推广