expression: fix wrong EqualByExprAndID (#26829)
This commit is contained in:
@ -235,7 +235,7 @@ func (col *Column) Equal(_ sessionctx.Context, expr Expression) bool {
|
||||
func (col *Column) EqualByExprAndID(_ sessionctx.Context, expr Expression) bool {
|
||||
if newCol, ok := expr.(*Column); ok {
|
||||
expr, isOk := col.VirtualExpr.(*ScalarFunction)
|
||||
isVirExprMatched := isOk && expr.Equal(nil, newCol.VirtualExpr)
|
||||
isVirExprMatched := isOk && expr.Equal(nil, newCol.VirtualExpr) && expr.RetType.Equal(newCol.RetType)
|
||||
return (newCol.UniqueID == col.UniqueID) || isVirExprMatched
|
||||
}
|
||||
return false
|
||||
|
||||
Reference in New Issue
Block a user