code: func (er *expressionRewriter) handleEQAll(lexpr, rexpr expression.Expression, np LogicalPlan) {
  	firstRowFunc := aggregation.NewAggFuncDesc(er.ctx, ast.AggFuncFirstRow, []expression.Expression{rexpr}, false)
  	countFunc := aggregation.NewAggFuncDesc(er.ctx, ast.AggFuncCount, []expression.Expression{rexpr}, true)
  	plan4Agg := LogicalAggregation{
  		AggFuncs: []*aggregation.AggFuncDesc{firstRowFunc, countFunc},
  	}.Init(er.ctx)
  	plan4Agg.SetChildren(np)
  	firstRowResultCol := &expression.Column{
  		ColName:  model.NewCIStr("col_firstRow"),
  		UniqueID: er.ctx.GetSessionVars().AllocPlanColumnID(),
  		RetType:  firstRowFunc.RetTp,
  	}
  	count := &expression.Column{
  		ColName:  model.NewCIStr("col_count"),
  		UniqueID: er.ctx.GetSessionVars().AllocPlanColumnID(),
  		RetType:  countFunc.RetTp,
  	}
  	plan4Agg.SetSchema(expression.NewSchema(firstRowResultCol, count))
  	leFunc := expression.NewFunctionInternal(er.ctx, ast.LE, types.NewFieldType(mysql.TypeTiny), count, expression.One)
  	eqCond := expression.NewFunctionInternal(er.ctx, ast.EQ, types.NewFieldType(mysql.TypeTiny), lexpr, firstRowResultCol)
  	cond := expression.ComposeCNFCondition(er.ctx, leFunc, eqCond)
  	er.buildQuantifierPlan(plan4Agg, cond, lexpr, rexpr, true)
  }
docs: // handleEQAll handles the case of = all. For example, if the query is t.id = all (select s.id from s), it will be rewrote to
  // t.id = (select s.id from s having count(distinct s.id) <= 1 and [all checker]).