filter¶
Object to provide a formatted filtering query for retrieving data from a SQL database.
- class pdm_utils.classes.filter.Filter(alchemist=None, key=None)¶
Bases:
object
- add(filter_string)¶
Add a MySQL where filter(s) to the Filter object class.
- Parameters
filter (str) – Formatted MySQL WHERE clause.
- and_(filter)¶
Add an and conditional to the Filter object class.
- Param_filter
Formatted MySQL WHERE clause.
- Type_filter
str
- build_values(where=None, column=None, raw_bytes=False, limit=8000)¶
Queries for values from stored WHERE clauses and Filter key.
- Parameters
where (list) – MySQL WHERE clause_related SQLAlchemy object(s).
order_by (list) – MySQL ORDER BY clause-related SQLAlchemy object(s).
column (str) – SQLAlchemy Column object or object name.
limit (int) – SQLAlchemy IN clause query length limiter.
- Returns
Distinct values fetched from given and innate constraints.
- Return type
list
- build_where_clauses()¶
Builds BinaryExpression objects from stored Filter object filters.
- Returns
A list of SQLAlchemy WHERE conditionals.
- Return type
list
- check()¶
Check Filter object contains valid essential objects. Filter object requires a SQLAlchemy Engine and Column as well as a NetworkX Graph.
- connect(alchemist=None)¶
Connect Filter object to a database with an AlchemyHandler.
- Parameters
alchemist (AlchemyHandler) – An AlchemyHandler object.
- property connected¶
- copy()¶
Returns a copy of a Filter object.
- copy_filters()¶
Returns a copy of a Filter object’s filter dictionary.
- property engine¶
- property filters¶
- get_column(raw_column)¶
Converts a column input, string or Column, to a Column.
- Parameters
raw_column (str) – SQLAlchemy Column object or object name.
- get_columns(raw_columns)¶
Converts a column input list, string or Column, to a list of Columns.
- Parameters
raw_column (list[str]) – SQLAlchemy Column object or object name.
- Returns
Returns SQLAlchemy Columns
- Return type
list[Column]
- property graph¶
- group(raw_column, raw_bytes=False, filter=False)¶
Queries and separates Filter object’s values based on a Column.
- Parameters
raw_column (str) – SQLAlchemy Column object or object name.
- hits()¶
Gets the number of a Filter object’s values.
- property key¶
- link(alchemist)¶
Connect Filter object to a database with an existing AlchemyHandler.
- Parameters
alchemist (AlchemyHandler) – An AlchemyHandler object.
- property mapper¶
- mass_transpose(raw_columns, raw_bytes=False, filter=False)¶
Queries for sets of distinct values, using self.transpose()
- Parameters
columns (list) – SQLAlchemy Column object(s)
- Returns
Distinct values fetched from given and innate restraints.
- Return type
dict
- new_or_()¶
Create a new conditional block to the Filter object class.
- property or_index¶
- parenthesize()¶
Condense current filters into an isolated clause
- print_results()¶
Prints the Filter object’s values in a formatted way.
- query(table_map)¶
Queries for ORM object instances conditioned on Filter values.
- Parameters
table_map (DeclarativeMeta) – SQLAlchemy ORM map object.
- Returns
List of mapped object instances.
- Return type
list
- refresh()¶
Re-queries for the Filter’s values.
- remove(filter)¶
Remove an and filter from the current block of and conditionals.
- Parameters
filter (str) – Formatted MySQL WHERE clause.
- reset()¶
Resets all filters, values, and Filter state conditions.
- reset_filters()¶
Resets all filters and relevant Filter state condition.
- retrieve(raw_columns, raw_bytes=False, filter=False)¶
Queries for distinct data for each value in the Filter object.
- Parameters
columns (list[str]) – SQLAlchemy Column object(s)
- Returns
Distinct values for each Filter value.
- Return type
dict{dict}
- select(raw_columns, return_dict=True)¶
Queries for data conditioned on the values in the Filter object.
- Parameters
columns (list[str]) – SQLAlchemy Column object(s)
return_dict (Boolean) – Toggle whether to return data as a dictionary.
- Returns
SELECT data conditioned on the values in the Filter object.
- Return type
dict
- Return type
list[RowProxy]
- property session¶
- sort(raw_columns)¶
Re-queries for the Filter’s values, applying a ORDER BY clause.
- Parameters
raw_column – SQLAlchemy Column object(s) or object name(s).
- transpose(raw_column, return_dict=False, set_values=False, raw_bytes=False, filter=False)¶
Queries for distinct values from stored values and a MySQL Column.
- Parameters
raw_column (str) – SQLAlchemy Column object or object name.
return_dict (Boolean) – Toggle whether to return data as a dictionary.
set_values (Boolean) – Toggle whether to replace Filter key and values.
- Returns
Distinct values fetched from given and innate constraints.
- Return type
list
- Return type
dict
- update()¶
Queries using the Filter’s key and its stored BinaryExpressions.
- property updated¶
- property values¶
- property values_valid¶