code: func EvalBool(expr Expression, row []types.Datum, ctx context.Context) (bool, error) {
  	data, err := expr.Eval(row, ctx)
  	if err != nil {
  		return false, errors.Trace(err)
  	}
  	if data.IsNull() {
  		return false, nil
  	}
  
  	i, err := data.ToBool(ctx.GetSessionVars().StmtCtx)
  	if err != nil {
  		return false, errors.Trace(err)
  	}
  	return i != 0, nil
  }
docs: // EvalBool evaluates expression to a boolean value.