code: func (p *baseLogicalPlan) DeriveStats(childStats []*property.StatsInfo) (*property.StatsInfo, error) {
  	if len(childStats) == 1 {
  		p.stats = childStats[0]
  		return p.stats, nil
  	}
  	if len(childStats) > 1 {
  		err := ErrInternal.GenWithStack("LogicalPlans with more than one child should implement their own DeriveStats().")
  		return nil, err
  	}
  	profile := &property.StatsInfo{
  		RowCount:    float64(1),
  		Cardinality: make([]float64, p.self.Schema().Len()),
  	}
  	for i := range profile.Cardinality {
  		profile.Cardinality[i] = float64(1)
  	}
  	p.stats = profile
  	return profile, nil
  }
docs: // DeriveStats implement LogicalPlan DeriveStats interface.