OrientDB - 连接两个字符串并聚合它们

时间:2015-11-27 07:29:01

标签: group-by string-concatenation orientdb-2.1

通常,如果我想连接两个字符串并应用聚合,我遵循以下语法:

Sql Server

SELECT substring(t.field, 1, 3) + substring(t.field, 5,7), count(*)
FROM myTable t
GROUP BY substring(t.field, 1, 3) + substring(t.field, 5,7)

的Oracle

SELECT CONCAT(substring(t.field, 1, 3), substring(t.field, 5,7)), count(*)
FROM myTable t
GROUP BY CONCAT(substring(t.field, 1, 3), substring(t.field, 5,7))

在OrientDB中,是否可以连接两个字符串并获得它们的汇总?

1 个答案:

答案 0 :(得分:2)

尝试这一点,OrientDb的解析器和查询执行器可能有时候特别适合使用group by选项,这将适用于严格模式'已禁用(工作室 - >登录 - > db - >底部的第二个标签页)

SELECT id,  $goofy , count(*) as cont from myTable
LET $sub = id.subString(4),
$goofy = id.subString(1,3).append($sub)
group by $goofy

请注意: 我在2变量中分解了代码,解析器在解析.append中的函数时遇到了一些问题 我很确定在Orientdb的下一个版本中这个问题将得到解决(他们已经开发了一个新的解析器)