当我尝试添加在连接多个输入之前必须满足的条件时,我似乎不能得到正确的语法。我将把代码留在下面,但本质上是CASE when‘Condition’,然后连接这些字符串+列,然后给我X ELSE 0,本质上就像任何其他case when语句一样,但带有concat。我尝试过IF语句,但也没有成功(我主要使用MYSQL )
我使用concat两次的原因是信息位于两个单独的表中,因此我需要使用||来生成所需的输出,但我希望有10个case when条件,它将根据其中一个条件是否为真来排除该连接
CASE WHEN 'specific condition' THEN concat('string',employee2.firstname) || concat('/employerid/',employee.lastname) ELSE 'Null')
WHEN ....
WHEN.....
WHEN ....END) as employee_ID发布于 2019-12-07 03:35:14
运算符||是MySql中的logical OR operator,而不是连接运算符(除非启用了PIPES_AS_CONCAT SQL模式)。
我之所以使用concat两次,是因为信息位于两个不同的表中
如果您想要连接所有4个值,那么您所需要的就是从CASE表达式访问这两个表,这样就没有理由两次使用concat()。
Concat()可以接受多个参数,因此不是:
concat('string',employee2.firstname) || concat('/employerid/',employee.lastname)执行以下操作:
concat('string',employee2.firstname, '/employerid/',employee.lastname)注意:'Null'不是NULL,它是一个字符串。
所以要这样做:
CASE
WHEN 'specific condition' THEN concat('string',employee2.firstname,'/employerid/',employee.lastname)
WHEN ....
WHEN.....
WHEN ....
END as employee_ID如果只想返回NULL,则不需要ELSE部件。
发布于 2021-03-10 15:44:16
删除
responsive: {
rules: [{
chartOptions: {
legend: {
layout: 'horizontal',
align: 'center',
verticalAlign: 'bottom'
}
}
}]
}https://stackoverflow.com/questions/59219188
复制相似问题