code: func (p *LogicalWindow) DeriveStats(childStats []*property.StatsInfo) (*property.StatsInfo, error) {
  	childProfile := childStats[0]
  	p.stats = &property.StatsInfo{
  		RowCount:    childProfile.RowCount,
  		Cardinality: make([]float64, p.schema.Len()),
  	}
  	for i := 0; i < p.schema.Len()-1; i++ {
  		colIdx := p.children[0].Schema().ColumnIndex(p.schema.Columns[i])
  		p.stats.Cardinality[i] = childProfile.Cardinality[colIdx]
  	}
  	p.stats.Cardinality[p.schema.Len()-1] = childProfile.RowCount
  	return p.stats, nil
  }
docs: // DeriveStats implement LogicalPlan DeriveStats interface.