Automattic\WooCommerce\Internal\DataStores\Orders

OrdersTableStatusUnionQuery::has_rewritable_clause_shapeprivateWC 1.0

Checks the fixed clauses (selected fields, join, group by) are exactly those of the plain order id list query. Any join, grouping or extra selected field means the query isn't a candidate for the rewrite.

Method of the class: OrdersTableStatusUnionQuery{}

No Hooks.

Returns

true|false. Whether the clause shape is rewritable.

Usage

// private - for code of main (parent) class only
$result = $this->has_rewritable_clause_shape( $clauses ): bool;
$clauses(string[]) (required)
The query clauses (see get_sql()).

OrdersTableStatusUnionQuery::has_rewritable_clause_shape() code WC 11.0.0

private function has_rewritable_clause_shape( array $clauses ): bool {
	return '' === ( $clauses['join'] ?? '' )
		&& '' === ( $clauses['groupby'] ?? '' )
		&& "{$this->orders_table}.id" === ( $clauses['fields'] ?? '' );
}