Given a :class:`_expression.ColumnElement`, return the exported :class:`_expression.ColumnElement` object from the :attr:`_expression.Selectable.exported_columns` collection of this :class:`_expression.Selectable` which corresponds to that original :class:`_ex
(
self, column: KeyedColumnElement[Any], require_embedded: bool = False
)
| 351 | return util.preloaded.sql_util.ClauseAdapter(alias).traverse(self) |
| 352 | |
| 353 | def corresponding_column( |
| 354 | self, column: KeyedColumnElement[Any], require_embedded: bool = False |
| 355 | ) -> Optional[KeyedColumnElement[Any]]: |
| 356 | """Given a :class:`_expression.ColumnElement`, return the exported |
| 357 | :class:`_expression.ColumnElement` object from the |
| 358 | :attr:`_expression.Selectable.exported_columns` |
| 359 | collection of this :class:`_expression.Selectable` |
| 360 | which corresponds to that |
| 361 | original :class:`_expression.ColumnElement` via a common ancestor |
| 362 | column. |
| 363 | |
| 364 | :param column: the target :class:`_expression.ColumnElement` |
| 365 | to be matched. |
| 366 | |
| 367 | :param require_embedded: only return corresponding columns for |
| 368 | the given :class:`_expression.ColumnElement`, if the given |
| 369 | :class:`_expression.ColumnElement` |
| 370 | is actually present within a sub-element |
| 371 | of this :class:`_expression.Selectable`. |
| 372 | Normally the column will match if |
| 373 | it merely shares a common ancestor with one of the exported |
| 374 | columns of this :class:`_expression.Selectable`. |
| 375 | |
| 376 | .. seealso:: |
| 377 | |
| 378 | :attr:`_expression.Selectable.exported_columns` - the |
| 379 | :class:`_expression.ColumnCollection` |
| 380 | that is used for the operation. |
| 381 | |
| 382 | :meth:`_expression.ColumnCollection.corresponding_column` |
| 383 | - implementation |
| 384 | method. |
| 385 | |
| 386 | """ |
| 387 | |
| 388 | return self.exported_columns.corresponding_column( |
| 389 | column, require_embedded |
| 390 | ) |
| 391 | |
| 392 | |
| 393 | class HasPrefixes: |