Node.js 如何在Cube.js过滤器查询中添加或设置条件
我想在Cube.js的JSON查询中添加或条件。但一旦我在过滤器中添加了一个条件,它就会在SQL查询中添加和条件 下面是我正在尝试的JSON查询Node.js 如何在Cube.js过滤器查询中添加或设置条件,node.js,cube.js,Node.js,Cube.js,我想在Cube.js的JSON查询中添加或条件。但一旦我在过滤器中添加了一个条件,它就会在SQL查询中添加和条件 下面是我正在尝试的JSON查询 { "dimensions": [ "Employee.name", "Employee.company" ], "timeDimensions": [], "measures": [], "filters": [ { "dimension": "Employee.company",
{
"dimensions": [
"Employee.name",
"Employee.company"
],
"timeDimensions": [],
"measures": [],
"filters": [
{
"dimension": "Employee.company",
"operator": "contains",
"values": [
"soft"
]
},
{
"dimension": "Employee.name",
"operator": "contains",
"values": [
"soft"
]
}
]
}
它生成下面的SQL查询
选择
`员工`.name`employee\uuuu name`,
`雇员公司雇员公司`
从…起
DEMO.Employee作为“Employee”`
哪里
`员工`.公司类CONCAT('%','soft','%'))
及
`员工`。名称,如CONCAT('%','soft','%'))
分组
1.
2.
如果要生成以下SQL,那么Cube.js的JSON查询是什么
选择
`员工`.name`employee\uuuu name`,
`雇员公司雇员公司`
从…起
DEMO.Employee作为“Employee”`
哪里
`员工`.公司类CONCAT('%','soft','%'))
或
`员工`。名称,如CONCAT('%','soft','%'))
分组
1.
2.
尚未提供对逻辑运算符的API支持。同时,有几个变通办法:
cube(`Employee`{
// ...
尺寸:{
公司名称:{
sql:`CONCAT(${company},,${name})`,
类型:`string`
}
}
});
cube(`Employee`{
// ...
部分:{
软:{
sql:“${company}类CONCAT('%','soft','%')或${name}类CONCAT('%','soft','%')”
}
}
});
谢谢!此解决方案适用于上述场景。但是假设我想对多个维度执行相同的场景,那么我需要对这些维度进行CONCAT。是的。正确的。如果您想模拟contains操作符的或行为,应该使用CONCAT()
。我创建了一个github问题,以更自然地支持这一点,而无需使用CONCAT跳过障碍