@@ -190,6 +190,43 @@ class ChangeColumnType(AlterBase):
190190 _validate_column_schema = field_validator ("column_schema" , mode = "before" )(deserialize_schema )
191191
192192
193+ class ColumnStatisticsStringResults (BaseModel ):
194+ max : str
195+ min : str
196+
197+
198+ class ColumnStatisticsNumericValueResult (BaseModel ):
199+ boolean : bool | None = None
200+ tinyint : int | None = None
201+ smallint : int | None = None
202+ integer : int | None = None
203+ bigint : int | None = None
204+ utinyint : int | None = None
205+ usmallint : int | None = None
206+ uinteger : int | None = None
207+ ubigint : int | None = None
208+ hugeint_high : int | None = None
209+ hugeint_low : int | None = None
210+ float_ : float | None = None
211+ double_ : float | None = None
212+
213+
214+ class ColumnStatisticsNumericResults (BaseModel ):
215+ has_min : bool
216+ has_max : bool
217+
218+ min : ColumnStatisticsNumericValueResult | None = None
219+ max : ColumnStatisticsNumericValueResult | None = None
220+
221+
222+ class ColumnStatisticsResult (BaseModel ):
223+ has_null : bool
224+ has_not_null : bool
225+ distinct_count : int
226+ string_stats : ColumnStatisticsStringResults | None = None
227+ numeric_stats : ColumnStatisticsNumericResults | None = None
228+
229+
193230class ColumnStatistics (BaseModel ):
194231 model_config = ConfigDict (arbitrary_types_allowed = True ) # for Pydantic v2
195232 flight_descriptor : flight .FlightDescriptor
0 commit comments