当前位置: 首页 > 软件库 > 程序开发 > 搜索引擎 >

EsParser

使用 SQL 查询 ElasticSearch
授权协议 MIT
开发语言 PHP
所属分类 程序开发、 搜索引擎
软件类型 开源软件
地区 国产
投 递 者 羊舌承
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

还在为学习elasticsearch的api而苦恼吗?还在为完不成搜索任而烦恼吗?

EsParser帮你解决上面的问题,它完全可以作为mysql来使用,提高网站的访问速度,提高项目的开发效率!

EsParser支持丰富的sql函数,同时为你的统计分析带来飞快的查询性能!

EsParser

php的操作类库,通过写sql来转化dsl来查询elasticsearch

composer使用

{
    "require": {
        "qieangel2013/esparser": "dev-master"
    }
}
composer install
require __DIR__.'/vendor/autoload.php';
//$sql = 'select * from alp_dish_sales_saas where sid in(994,290) limit 1,10';
//$sql='update alp_dish_sales_saas set mid=3  where adsid=15125110';
//$sql='delete from alp_dish_sales_saas where adsid=15546509';
//$sql="select *,concat_ws('_',category_name.keyword,dish_name.keyword,sku_name.keyword) as dfg from alp_dish_sales_saas where sale_date>'2017-01-01' and sale_date<'2017-09-02' group by dfg order by total_count desc";
$sql = 'select *,DATE_FORMAT(sale_date,"%Y-%m-%d") as days from alp_dish_sales_saas group by days ';
$es_config=array(
    'index' =>"alp_dish_sales_saas",
    'type'  =>"alp_dish_sales_saas",
    'url'   =>"http://127.0.0.1:9200",
    'version' =>"5.x" //1.x 2.x 5.x 6.x,可以不配置,系统会请求获取版本,这样会多一次请求,建议配置一下
 );
$parser = new EsParser($sql, true,$es_config);//第三个参数是es的配置参数,一定要配置
print_r($parser->result);//打印结果
//print_r($parser->explain());//打印dsl

普通调用

require_once dirname(__FILE__) . '/src/library/EsParser.php';
//$sql = 'select * from alp_dish_sales_saas where sid in(994,290) limit 1,10';
//$sql='update alp_dish_sales_saas set mid=3  where adsid=15125110';
//$sql='delete from alp_dish_sales_saas where adsid=15546509';
//$sql="select *,concat_ws('_',category_name.keyword,dish_name.keyword,sku_name.keyword) as dfg from alp_dish_sales_saas where sale_date>'2017-01-01' and sale_date<'2017-09-02' group by dfg order by total_count desc";
$sql = 'select *,DATE_FORMAT(sale_date,"%Y-%m-%d") as days from alp_dish_sales_saas group by days ';
$es_config=array(
    	'index' =>"alp_dish_sales_saas",
    	'type'  =>"alp_dish_sales_saas",
    	'url'   =>"http://127.0.0.1:9200",
        'version' =>"5.x" //1.x 2.x 5.x 6.x,可以不配置,系统会请求获取版本,这样会多一次请求,建议配置一下
	);
$parser = new EsParser($sql, true,$es_config);//第三个参数是es的配置参数,一定要配置
print_r($parser->result);//打印结果
//print_r($parser->explain()); //打印dsl

目前支持的sql函数

*  SQL Select
*  SQL Delete
*  SQL Update
*  SQL Where
*  SQL Order By
*  SQL Group By
*  SQL AND & OR 
*  SQL Like
*  SQL COUNT distinct
*  SQL In
*  SQL avg()
*  SQL count()
*  SQL max()
*  SQL min()
*  SQL sum()
*  SQL Between
*  SQL Aliases
*  SQL concat_ws
*  SQL DATE_FORMATE

使用注意事项

请在配置项填写es的版本,这样系统不会请求获取版本,这样不会多一次请求,建议配置一下

项目地址

github:https://github.com/qieangel2013/EsParser
oschina:https://gitee.com/qieangel2013/EsParser
  • EsParser php的操作类库,通过写sql来转化dsl来查询elasticsearch composer使用 { "require": { "qieangel2013/esparser": "dev-master" } } composer install require __DIR__.'/vendor/autoload.php'; //$sql = 'se

  • EsParser php的操作类库,通过写sql来转化dsl来查询elasticsearch composer使用 { "require": { "qieangel2013/esparser": "dev-master" } } composer install require __DIR__.'/vendor/autoload.php'; //$sql = 'select * from alp_

  • EsParser php的操作类库,通过写sql来转化dsl来查询elasticsearch composer使用 { "require": { "qieangel2013/esparser": "dev-master" } } composer install require __DIR__.'/vendor/autoload.php'; //$sql = 'select * from alp_

  • EsParser 是 PHP 的操作类库,通过写 sql 来转化 dsl 来查询 Elasticsearch,特点是开箱即用、高性能查询 ,目前1.2 已发布,更新如下: 更新支持not like ,!=,多重or等sql操作符等特性 更新修复in的bug 更新修复分页的bug 详情 相关链接 EsParser 的详细介绍:点击查看 EsParser 的下载地址:点击下载

  • 软件介绍 还在为学习elasticsearch的api而苦恼吗?还在为完不成搜索任而烦恼吗? EsParser帮你解决上面的问题,它完全可以作为mysql来使用,提高网站的访问速度,提高项目的开发效率! EsParser支持丰富的sql函数,同时为你的统计分析带来飞快的查询性能! EsParser php的操作类库,通过写sql来转化dsl来查询elasticsearch composer使用{

  • { "require": { "qieangel2013/esparser": "dev-master" } } composer install require __DIR__.'/vendor/autoload.php'; //$sql = 'select * from alp_dish_sales_saas where sid in(994,290) limit 1,10'; //$sql=

 相关资料
  • 问题内容: 我正在使用Jesey在Java(JAX-RS)中实现Restful Web Service。我在Tomcat v7.0上运行它,我使用Hibernate将数据映射到数据库(MySQL)。我有一个查询来获取可交付成果的列表: 它给了我一百个可交付成果,但我想在Task表中拥有前三名。感谢您的帮助。如何修改查询? 请注意,这三个可交付成果不应重复。 与@FGreg答案存在冲突。当我使用这些

  • 问题内容: 我希望使用find在rails控制器中编写此SQL查询: 我该怎么做?我正在使用Rails框架和MySQL。提前致谢。 问题答案: 简单方法: 一枪:

  • 我有下面的模式, 学生(名字、姓氏、SID) 已注册(学生ID、课程ID) 课程(CID、课程名称、系) 我需要找出哪些学生上的课比课多。和位位于类别中。我有以下查询,其中列出了所有注册课程的学生以及他们注册了多少课程。 不太确定如何将这个数字与那些注册信息技术课程的人进行比较。

  • 我有一个API调用,它需要从MySQL数据库中提取一些信息,以便完成请求。问题是,NodeJS不会等待查询响应,我已经尝试用承诺来解决这个问题。下面是我的代码: 这个函数将返回Promise对象,这将触发SQL语法错误,因为这不是预期的数据库输入。我做错了什么?任何建议都非常感谢。

  • 数据库: SQL查询 搜索 当我使用“Like”查询时,一切都正常,但是当我查找John时,它会显示John和Johnson的两个结果,因为它们是相似的。但当我搜索约翰时,它必须只显示约翰(而不是约翰逊)的结果。 到目前为止,我试过: 但它不起作用LogCat: 请给我一个提示。