sql - 在 elasticsearch 中使用 /_SQL API 处理“null_value”属性
问题描述
我有一个使用 typescript 和 .net(服务器端)开发的 Web 应用程序,它类似于 BI 工具。我们使用 Elasticsearch 作为数据连接器,我可以在其中根据我在 elasticsearch 中的记录创建仪表板。
我有一个带有下面架构的示例表
"mappings": {
"_doc": {
"properties": {
"status_code": {
"type": "keyword",
"null_value": "NULL"
}
}
当我向下钻取值时,由于空行为,它显示为没有记录。当我的数据为空值时,请查找查询格式
视频:https ://easyupload.io/4ubcie
SELECT
"employeeName" AS "column4",
SUM( "id" ) AS "column5"
FROM "test_emp5" AS "33f25b56fc4d71a82831f4dce21a24"
WHERE ( ( (CAST("shift" AS VARCHAR) IN( 'AM' ))))
GROUP BY "employeeName"
ORDER BY "column4" ASC LIMIT 101
SELECT
"employeeName" AS "column4",
SUM( "id" ) AS "column5"
FROM "test_emp5" AS "33f25b56fc4d71a82831f4dce21a24"
WHERE ( ( (CAST("shift" AS VARCHAR) IN( '' ))))
GROUP BY "employeeName"
ORDER BY "column4" ASC LIMIT 101
如果您在数据为空时看到上面的查询,则它的形式类似于上面的第二个查询。我知道在添加“null_value”属性后,这不应该像 null 一样,我可以索引它。有任何想法吗??
我们使用/_sql API 来形成这个查询。
样本数据:
{"took":2,"timed_out":false,"_shards":{"total":1,"successful":1,"skipped":0,"failed":0},"hits":{"total":{"value":4,"relation":"eq"},"max_score":1.0,"hits":[{"_index":"test_emp3","_type":"_doc","_id":"QrTxgnsBhHo46Lwj58A-","_score":1.0,"_source":{"employeeName":"John_doe","shift":"AM","id":2116}},{"_index":"test_emp3","_type":"_doc","_id":"Q7TxgnsBhHo46Lwj58A-","_score":1.0,"_source":{"employeeName":"James_lebron","shift":"AM","id":2117}},{"_index":"test_emp3","_type":"_doc","_id":"RLTxgnsBhHo46Lwj58A-","_score":1.0,"_source":{"employeeName":"Mick_tyson","shift":"PM","id":2118}},{"_index":"test_emp3","_type":"_doc","_id":"1\n","_score":1.0,"_source":{
"id":2991,
"employeeName":"Kane",
"shift":"AM"
}}]}}
解决方案
推荐阅读
- mysql - 你如何添加格式化的数字列
- powershell - 进入 Start-RSJob
- java - 在 Docker 上运行 Java Swing GUI 应用程序
- html - 如何使 div 填充剩余的视口并正确滚动内容?
- java - 使用 ENUM 将默认值设置为不合格
- azure-data-lake - 如何解决从 sqlserver 数据仓库中的外部源读取时被拒绝的行
- sql-server - 在内存使用方面插入父子关系的最有效方法是什么?
- amazon-web-services - google cloud 的 Cloud Run 与 serverless 技术有何不同,它的可扩展性如何?
- ios - 类型“CAMediaTimingFillMode”(又名“NSString”)没有成员“前锋”
- typo3 - 模型中的 TypoScript 持久性映射