mysql - 在 Apache Flink 的 Table API 中使用 CASE WHEN 进行查询

标签 mysql apache-flink flink-streaming flink-cep

我正在使用 Flink 的 Table API。我想在 Table API 查询中使用 CASE WHEN 。 我的查询使用三个字段:routeid、startlocation、distance,并且我想使用 CASE WHEN 子句来根据 distance 值来识别因素是基于 routeid 需要满足的条件。

示例:

SELECT 
  routeid, 
  startlocation, 
  CASE WHEN (routeid=1) AND (distance > 0 AND distance <= 250) THEN 'oneday-distance'

这可以通过 Flink 的 Table API 实现吗?如果是,该怎么办?

最佳答案

最新的 Flink 1.0.3 版本的 Table API 不支持 CASE WHEN 子句。

对于下一个版本 (Flink 1.1.0),Table API 进行了重新设计和扩展,并将支持 CASE WHEN 子句。我们可以尝试1.1-SNAPSHOT版本来尝试该功能。欢迎提供反馈。

关于mysql - 在 Apache Flink 的 Table API 中使用 CASE WHEN 进行查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37247891/

相关文章:

php - EMIT 在 PHP 中选择选项

MySQL 选择最新出现的 GROUP BY 字段

MySQL ORDER By one Specific value in column (具有逗号分隔值)

scala - 使用流中的值动态创建平面映射函数(键控状态)

java - Flink 1.4 无法检索 BlobServer 地址

mysql - utf8 mysql字符串音译

java - 如何在 Flink 中增加 SinkFunction 的 numRecordsOutPut 指标?

java - Apache Flink - 自定义 java 选项在作业中无法识别

java - 弗林克 : how to understand how many instances of parallel operators exist?

java - Apache Flink 将结果减少为多个值而不是一个