# Class Thelia\Model\om\BaseProductQuery | thelia

# Class BaseProductQuery

Base class that represents a query for the 'product' table.

  ModelCriteria
  Thelia\Model\om\BaseProductQuery

#### Direct known subclasses

Thelia\Model\ProductQuery
Abstract
Namespace: Thelia\Model\om
Package: propel\generator\Thelia\Model\om
Located at core/lib/Thelia/Model/om/BaseProductQuery.php

Methods summary

`public`

# `__construct( string $dbName = 'thelia', string $modelName = 'Thelia\\Model\\Product', string $modelAlias = null )`

Initializes internal state of BaseProductQuery object.

Initializes internal state of BaseProductQuery object.

#### Parameters

$dbName
  `string`
  $dbName The dabase name
$modelName
  `string`
  $modelName The phpName of a model, e.g. 'Book'
$modelAlias
  `string`
  $modelAlias The alias for the model in this query, e.g. 'b'

`public static `Thelia\Model\ProductQuery``

# `create( string $modelAlias = null, `Thelia\Model\ProductQuery`|Criteria $criteria = null )`

Returns a new ProductQuery object.

Returns a new ProductQuery object.

#### Parameters

$modelAlias
  `string`
  $modelAlias The alias of a model in the query
$criteria
  ``Thelia\Model\ProductQuery`|Criteria`
  $criteria Optional Criteria to build the query from

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\Product`|`Thelia\Model\Product[]`|mixed`

# `findPk( mixed $key, PropelPDO $con = null )`

Find object by primary key. Propel uses the instance pool to skip the database if the object exists. Go fast if the query is untouched.

Find object by primary key. Propel uses the instance pool to skip the database if the object exists. Go fast if the query is untouched.

    $obj  = $c->findPk(12, $con);

#### Parameters

$key
  `mixed`
  $key Primary key to use for the query
$con
  `PropelPDO`
  $con an optional connection object

#### Returns

``Thelia\Model\Product`|`Thelia\Model\Product[]`|mixed`
the result, formatted by the current formatter

`protected `Thelia\Model\Product``

# `findPkSimple( mixed $key, PropelPDO $con )`

Find object by primary key using raw SQL to go fast. Bypass doSelect() and the object formatter by using generated code.

Find object by primary key using raw SQL to go fast. Bypass doSelect() and the object formatter by using generated code.

#### Parameters

$key
  `mixed`
  $key Primary key to use for the query
$con
  `PropelPDO`
  $con A connection object

#### Returns

``Thelia\Model\Product``
A model object, or null if the key is not found

#### Throws

`PropelException`

`protected `Thelia\Model\Product`|`Thelia\Model\Product[]`|mixed`

# `findPkComplex( mixed $key, PropelPDO $con )`

Find object by primary key.

Find object by primary key.

#### Parameters

$key
  `mixed`
  $key Primary key to use for the query
$con
  `PropelPDO`
  $con A connection object

#### Returns

``Thelia\Model\Product`|`Thelia\Model\Product[]`|mixed`
the result, formatted by the current formatter

`public PropelObjectCollection|`Thelia\Model\Product[]`|mixed`

# `findPks( array $keys, PropelPDO $con = null )`

Find objects by primary key

    $objs = $c->findPks(array(12, 56, 832), $con);

Find objects by primary key

    $objs = $c->findPks(array(12, 56, 832), $con);

#### Parameters

$keys
  `array`
  $keys Primary keys to use for the query
$con
  `PropelPDO`
  $con an optional connection object

#### Returns

`PropelObjectCollection|`Thelia\Model\Product[]`|mixed`
the list of results, formatted by the current formatter

`public `Thelia\Model\ProductQuery``

# `filterByPrimaryKey( mixed $key )`

Filter the query by primary key

Filter the query by primary key

#### Parameters

$key
  `mixed`
  $key Primary key to use for the query

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\ProductQuery``

# `filterByPrimaryKeys( array $keys )`

Filter the query by a list of primary keys

Filter the query by a list of primary keys

#### Parameters

$keys
  `array`
  $keys The list of primary key to use for the query

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\ProductQuery``

# `filterById( mixed $id = null, string $comparison = null )`

Filter the query on the id column

Filter the query on the id column

Example usage:

    $query->filterById(1234); // WHERE id = 1234
    $query->filterById(array(12, 34)); // WHERE id IN (12, 34)
    $query->filterById(array('min' => 12)); // WHERE id > 12

#### Parameters

$id
  `mixed`
  $id The value to use as filter. Use scalar values for equality. Use array values for in_array() equivalent. Use associative array('min' => $minValue, 'max' => $maxValue) for intervals.
$comparison
  `string`
  $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\ProductQuery``

# `filterByTaxRuleId( mixed $taxRuleId = null, string $comparison = null )`

Filter the query on the tax_rule_id column

Filter the query on the tax_rule_id column

Example usage:

    $query->filterByTaxRuleId(1234); // WHERE tax_rule_id = 1234
    $query->filterByTaxRuleId(array(12, 34)); // WHERE tax_rule_id IN (12, 34)
    $query->filterByTaxRuleId(array('min' => 12)); // WHERE tax_rule_id > 12

#### Parameters

$taxRuleId
  `mixed`
  $taxRuleId The value to use as filter. Use scalar values for equality. Use array values for in_array() equivalent. Use associative array('min' => $minValue, 'max' => $maxValue) for intervals.
$comparison
  `string`
  $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

#### See

``Thelia\Model\om\BaseProductQuery::filterByTaxRule()``

`public `Thelia\Model\ProductQuery``

# `filterByRef( string $ref = null, string $comparison = null )`

Filter the query on the ref column

Filter the query on the ref column

Example usage:

    $query->filterByRef('fooValue');   // WHERE ref = 'fooValue'
    $query->filterByRef('%fooValue%'); // WHERE ref LIKE '%fooValue%'

#### Parameters

$ref
  `string`
  $ref The value to use as filter. Accepts wildcards (* and % trigger a LIKE)
$comparison
  `string`
  $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\ProductQuery``

# `filterByPrice( mixed $price = null, string $comparison = null )`

Filter the query on the price column

Filter the query on the price column

Example usage:

    $query->filterByPrice(1234); // WHERE price = 1234
    $query->filterByPrice(array(12, 34)); // WHERE price IN (12, 34)
    $query->filterByPrice(array('min' => 12)); // WHERE price > 12

#### Parameters

$price
  `mixed`
  $price The value to use as filter. Use scalar values for equality. Use array values for in_array() equivalent. Use associative array('min' => $minValue, 'max' => $maxValue) for intervals.
$comparison
  `string`
  $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\ProductQuery``

# `filterByPrice2( mixed $price2 = null, string $comparison = null )`

Filter the query on the price2 column

Filter the query on the price2 column

Example usage:

    $query->filterByPrice2(1234); // WHERE price2 = 1234
    $query->filterByPrice2(array(12, 34)); // WHERE price2 IN (12, 34)
    $query->filterByPrice2(array('min' => 12)); // WHERE price2 > 12

#### Parameters

$price2
  `mixed`
  $price2 The value to use as filter. Use scalar values for equality. Use array values for in_array() equivalent. Use associative array('min' => $minValue, 'max' => $maxValue) for intervals.
$comparison
  `string`
  $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\ProductQuery``

# `filterByEcotax( mixed $ecotax = null, string $comparison = null )`

Filter the query on the ecotax column

Filter the query on the ecotax column

Example usage:

    $query->filterByEcotax(1234); // WHERE ecotax = 1234
    $query->filterByEcotax(array(12, 34)); // WHERE ecotax IN (12, 34)
    $query->filterByEcotax(array('min' => 12)); // WHERE ecotax > 12

#### Parameters

$ecotax
  `mixed`
  $ecotax The value to use as filter. Use scalar values for equality. Use array values for in_array() equivalent. Use associative array('min' => $minValue, 'max' => $maxValue) for intervals.
$comparison
  `string`
  $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\ProductQuery``

# `filterByNewness( mixed $newness = null, string $comparison = null )`

Filter the query on the newness column

Filter the query on the newness column

Example usage:

    $query->filterByNewness(1234); // WHERE newness = 1234
    $query->filterByNewness(array(12, 34)); // WHERE newness IN (12, 34)
    $query->filterByNewness(array('min' => 12)); // WHERE newness > 12

#### Parameters

$newness
  `mixed`
  $newness The value to use as filter. Use scalar values for equality. Use array values for in_array() equivalent. Use associative array('min' => $minValue, 'max' => $maxValue) for intervals.
$comparison
  `string`
  $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\ProductQuery``

# `filterByPromo( mixed $promo = null, string $comparison = null )`

Filter the query on the promo column

Filter the query on the promo column

Example usage:

    $query->filterByPromo(1234); // WHERE promo = 1234
    $query->filterByPromo(array(12, 34)); // WHERE promo IN (12, 34)
    $query->filterByPromo(array('min' => 12)); // WHERE promo > 12

#### Parameters

$promo
  `mixed`
  $promo The value to use as filter. Use scalar values for equality. Use array values for in_array() equivalent. Use associative array('min' => $minValue, 'max' => $maxValue) for intervals.
$comparison
  `string`
  $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\ProductQuery``

# `filterByStock( `Thelia\Model\Stock`|PropelObjectCollection $stock, string $comparison = null )`

Filter the query by a related Stock object

Filter the query by a related Stock object

#### Parameters

$stock
  ``Thelia\Model\Stock`|PropelObjectCollection`
  $stock the related object to use as filter
$comparison
  `string`
  $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

#### Throws

`PropelException`
- if the provided filter is invalid.

`public `Thelia\Model\ProductQuery``

# `filterByVisible( mixed $visible = null, string $comparison = null )`

Filter the query on the visible column

Filter the query on the visible column

Example usage:

    $query->filterByVisible(1234); // WHERE visible = 1234
    $query->filterByVisible(array(12, 34)); // WHERE visible IN (12, 34)
    $query->filterByVisible(array('min' => 12)); // WHERE visible > 12

#### Parameters

$visible
  `mixed`
  $visible The value to use as filter. Use scalar values for equality. Use array values for in_array() equivalent. Use associative array('min' => $minValue, 'max' => $maxValue) for intervals.
$comparison
  `string`
  $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\ProductQuery``

# `filterByWeight( mixed $weight = null, string $comparison = null )`

Filter the query on the weight column

Filter the query on the weight column

Example usage:

    $query->filterByWeight(1234); // WHERE weight = 1234
    $query->filterByWeight(array(12, 34)); // WHERE weight IN (12, 34)
    $query->filterByWeight(array('min' => 12)); // WHERE weight > 12

#### Parameters

$weight
  `mixed`
  $weight The value to use as filter. Use scalar values for equality. Use array values for in_array() equivalent. Use associative array('min' => $minValue, 'max' => $maxValue) for intervals.
$comparison
  `string`
  $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\ProductQuery``

# `filterByPosition( mixed $position = null, string $comparison = null )`

Filter the query on the position column

Filter the query on the position column

Example usage:

    $query->filterByPosition(1234); // WHERE position = 1234
    $query->filterByPosition(array(12, 34)); // WHERE position IN (12, 34)
    $query->filterByPosition(array('min' => 12)); // WHERE position > 12

#### Parameters

$position
  `mixed`
  $position The value to use as filter. Use scalar values for equality. Use array values for in_array() equivalent. Use associative array('min' => $minValue, 'max' => $maxValue) for intervals.
$comparison
  `string`
  $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\ProductQuery``

# `filterByCreatedAt( mixed $createdAt = null, string $comparison = null )`

Filter the query on the created_at column

Filter the query on the created_at column

Example usage:

    $query->filterByCreatedAt('2011-03-14'); // WHERE created_at = '2011-03-14'
    $query->filterByCreatedAt('now'); // WHERE created_at = '2011-03-14'
    $query->filterByCreatedAt(array('max' => 'yesterday')); // WHERE created_at > '2011-03-13'

#### Parameters

$createdAt
  `mixed`
  $createdAt The value to use as filter. Values can be integers (unix timestamps), DateTime objects, or strings. Empty strings are treated as NULL. Use scalar values for equality. Use array values for in_array() equivalent. Use associative array('min' => $minValue, 'max' => $maxValue) for intervals.
$comparison
  `string`
  $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\ProductQuery``

# `filterByUpdatedAt( mixed $updatedAt = null, string $comparison = null )`

Filter the query on the updated_at column

Filter the query on the updated_at column

Example usage:

    $query->filterByUpdatedAt('2011-03-14'); // WHERE updated_at = '2011-03-14'
    $query->filterByUpdatedAt('now'); // WHERE updated_at = '2011-03-14'
    $query->filterByUpdatedAt(array('max' => 'yesterday')); // WHERE updated_at > '2011-03-13'

#### Parameters

$updatedAt
  `mixed`
  $updatedAt The value to use as filter. Values can be integers (unix timestamps), DateTime objects, or strings. Empty strings are treated as NULL. Use scalar values for equality. Use array values for in_array() equivalent. Use associative array('min' => $minValue, 'max' => $maxValue) for intervals.
$comparison
  `string`
  $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\ProductQuery``

# `filterByVersion( mixed $version = null, string $comparison = null )`

Filter the query on the version column

Filter the query on the version column

Example usage:

    $query->filterByVersion(1234); // WHERE version = 1234
    $query->filterByVersion(array(12, 34)); // WHERE version IN (12, 34)
    $query->filterByVersion(array('min' => 12)); // WHERE version > 12

#### Parameters

$version
  `mixed`
  $version The value to use as filter. Use scalar values for equality. Use array values for in_array() equivalent. Use associative array('min' => $minValue, 'max' => $maxValue) for intervals.
$comparison
  `string`
  $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\ProductQuery``

# `filterByVersionCreatedAt( mixed $versionCreatedAt = null, string $comparison = null )`

Filter the query on the version_created_at column

Filter the query on the version_created_at column

Example usage:

    $query->filterByVersionCreatedAt('2011-03-14'); // WHERE version_created_at = '2011-03-14'
    $query->filterByVersionCreatedAt('now'); // WHERE version_created_at = '2011-03-14'
    $query->filterByVersionCreatedAt(array('max' => 'yesterday')); // WHERE version_created_at > '2011-03-13'

#### Parameters

$versionCreatedAt
  `mixed`
  $versionCreatedAt The value to use as filter. Values can be integers (unix timestamps), DateTime objects, or strings. Empty strings are treated as NULL. Use scalar values for equality. Use array values for in_array() equivalent. Use associative array('min' => $minValue, 'max' => $maxValue) for intervals.
$comparison
  `string`
  $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\ProductQuery``

# `filterByVersionCreatedBy( string $versionCreatedBy = null, string $comparison = null )`

Filter the query on the version_created_by column

Filter the query on the version_created_by column

Example usage:

    $query->filterByVersionCreatedBy('fooValue');   // WHERE version_created_by = 'fooValue'
    $query->filterByVersionCreatedBy('%fooValue%'); // WHERE version_created_by LIKE '%fooValue%'

#### Parameters

$versionCreatedBy
  `string`
  $versionCreatedBy The value to use as filter. Accepts wildcards (* and % trigger a LIKE)
$comparison
  `string`
  $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\ProductQuery``

# `filterByTaxRule( `Thelia\Model\TaxRule`|PropelObjectCollection $taxRule, string $comparison = null )`

Filter the query by a related TaxRule object

Filter the query by a related TaxRule object

#### Parameters

$taxRule
  ``Thelia\Model\TaxRule`|PropelObjectCollection`
  $taxRule The related object(s) to use as filter
$comparison
  `string`
  $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

#### Throws

`PropelException`
- if the provided filter is invalid.

`public `Thelia\Model\ProductQuery``

# `joinTaxRule( string $relationAlias = null, string $joinType = Thelia\Model\om\Criteria::LEFT_JOIN )`

Adds a JOIN clause to the query using the TaxRule relation

Adds a JOIN clause to the query using the TaxRule relation

#### Parameters

$relationAlias
  `string`
  $relationAlias optional alias for the relation
$joinType
  `string`
  $joinType Accepted values are null, 'left join', 'right join', 'inner join'

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\TaxRuleQuery``

# `useTaxRuleQuery( string $relationAlias = null, string $joinType = Thelia\Model\om\Criteria::LEFT_JOIN )`

Use the TaxRule relation TaxRule object

Use the TaxRule relation TaxRule object

#### Parameters

$relationAlias
  `string`
  $relationAlias optional alias for the relation, to be used as main alias in the secondary query
$joinType
  `string`
  $joinType Accepted values are null, 'left join', 'right join', 'inner join'

#### Returns

``Thelia\Model\TaxRuleQuery``
A secondary query class using the current class as primary query

#### See

useQuery()

`public `Thelia\Model\ProductQuery``

# `filterByProductCategory( `Thelia\Model\ProductCategory`|PropelObjectCollection $productCategory, string $comparison = null )`

Filter the query by a related ProductCategory object

Filter the query by a related ProductCategory object

#### Parameters

$productCategory
  ``Thelia\Model\ProductCategory`|PropelObjectCollection`
  $productCategory the related object to use as filter
$comparison
  `string`
  $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

#### Throws

`PropelException`
- if the provided filter is invalid.

`public `Thelia\Model\ProductQuery``

# `joinProductCategory( string $relationAlias = null, string $joinType = Thelia\Model\om\Criteria::INNER_JOIN )`

Adds a JOIN clause to the query using the ProductCategory relation

Adds a JOIN clause to the query using the ProductCategory relation

#### Parameters

$relationAlias
  `string`
  $relationAlias optional alias for the relation
$joinType
  `string`
  $joinType Accepted values are null, 'left join', 'right join', 'inner join'

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\ProductCategoryQuery``

# `useProductCategoryQuery( string $relationAlias = null, string $joinType = Thelia\Model\om\Criteria::INNER_JOIN )`

Use the ProductCategory relation ProductCategory object

Use the ProductCategory relation ProductCategory object

#### Parameters

$relationAlias
  `string`
  $relationAlias optional alias for the relation, to be used as main alias in the secondary query
$joinType
  `string`
  $joinType Accepted values are null, 'left join', 'right join', 'inner join'

#### Returns

``Thelia\Model\ProductCategoryQuery``
A secondary query class using the current class as primary query

#### See

useQuery()

`public `Thelia\Model\ProductQuery``

# `filterByFeatureProd( `Thelia\Model\FeatureProd`|PropelObjectCollection $featureProd, string $comparison = null )`

Filter the query by a related FeatureProd object

Filter the query by a related FeatureProd object

#### Parameters

$featureProd
  ``Thelia\Model\FeatureProd`|PropelObjectCollection`
  $featureProd the related object to use as filter
$comparison
  `string`
  $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

#### Throws

`PropelException`
- if the provided filter is invalid.

`public `Thelia\Model\ProductQuery``

# `joinFeatureProd( string $relationAlias = null, string $joinType = Thelia\Model\om\Criteria::INNER_JOIN )`

Adds a JOIN clause to the query using the FeatureProd relation

Adds a JOIN clause to the query using the FeatureProd relation

#### Parameters

$relationAlias
  `string`
  $relationAlias optional alias for the relation
$joinType
  `string`
  $joinType Accepted values are null, 'left join', 'right join', 'inner join'

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\FeatureProdQuery``

# `useFeatureProdQuery( string $relationAlias = null, string $joinType = Thelia\Model\om\Criteria::INNER_JOIN )`

Use the FeatureProd relation FeatureProd object

Use the FeatureProd relation FeatureProd object

#### Parameters

$relationAlias
  `string`
  $relationAlias optional alias for the relation, to be used as main alias in the secondary query
$joinType
  `string`
  $joinType Accepted values are null, 'left join', 'right join', 'inner join'

#### Returns

``Thelia\Model\FeatureProdQuery``
A secondary query class using the current class as primary query

#### See

useQuery()

`public `Thelia\Model\ProductQuery``

# `joinStock( string $relationAlias = null, string $joinType = Thelia\Model\om\Criteria::INNER_JOIN )`

Adds a JOIN clause to the query using the Stock relation

Adds a JOIN clause to the query using the Stock relation

#### Parameters

$relationAlias
  `string`
  $relationAlias optional alias for the relation
$joinType
  `string`
  $joinType Accepted values are null, 'left join', 'right join', 'inner join'

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\StockQuery``

# `useStockQuery( string $relationAlias = null, string $joinType = Thelia\Model\om\Criteria::INNER_JOIN )`

Use the Stock relation Stock object

Use the Stock relation Stock object

#### Parameters

$relationAlias
  `string`
  $relationAlias optional alias for the relation, to be used as main alias in the secondary query
$joinType
  `string`
  $joinType Accepted values are null, 'left join', 'right join', 'inner join'

#### Returns

``Thelia\Model\StockQuery``
A secondary query class using the current class as primary query

#### See

useQuery()

`public `Thelia\Model\ProductQuery``

# `filterByContentAssoc( `Thelia\Model\ContentAssoc`|PropelObjectCollection $contentAssoc, string $comparison = null )`

Filter the query by a related ContentAssoc object

Filter the query by a related ContentAssoc object

#### Parameters

$contentAssoc
  ``Thelia\Model\ContentAssoc`|PropelObjectCollection`
  $contentAssoc the related object to use as filter
$comparison
  `string`
  $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

#### Throws

`PropelException`
- if the provided filter is invalid.

`public `Thelia\Model\ProductQuery``

# `joinContentAssoc( string $relationAlias = null, string $joinType = Thelia\Model\om\Criteria::LEFT_JOIN )`

Adds a JOIN clause to the query using the ContentAssoc relation

Adds a JOIN clause to the query using the ContentAssoc relation

#### Parameters

$relationAlias
  `string`
  $relationAlias optional alias for the relation
$joinType
  `string`
  $joinType Accepted values are null, 'left join', 'right join', 'inner join'

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\ContentAssocQuery``

# `useContentAssocQuery( string $relationAlias = null, string $joinType = Thelia\Model\om\Criteria::LEFT_JOIN )`

Use the ContentAssoc relation ContentAssoc object

Use the ContentAssoc relation ContentAssoc object

#### Parameters

$relationAlias
  `string`
  $relationAlias optional alias for the relation, to be used as main alias in the secondary query
$joinType
  `string`
  $joinType Accepted values are null, 'left join', 'right join', 'inner join'

#### Returns

``Thelia\Model\ContentAssocQuery``
A secondary query class using the current class as primary query

#### See

useQuery()

`public `Thelia\Model\ProductQuery``

# `filterByImage( `Thelia\Model\Image`|PropelObjectCollection $image, string $comparison = null )`

Filter the query by a related Image object

Filter the query by a related Image object

#### Parameters

$image
  ``Thelia\Model\Image`|PropelObjectCollection`
  $image the related object to use as filter
$comparison
  `string`
  $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

#### Throws

`PropelException`
- if the provided filter is invalid.

`public `Thelia\Model\ProductQuery``

# `joinImage( string $relationAlias = null, string $joinType = Thelia\Model\om\Criteria::LEFT_JOIN )`

Adds a JOIN clause to the query using the Image relation

Adds a JOIN clause to the query using the Image relation

#### Parameters

$relationAlias
  `string`
  $relationAlias optional alias for the relation
$joinType
  `string`
  $joinType Accepted values are null, 'left join', 'right join', 'inner join'

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\ImageQuery``

# `useImageQuery( string $relationAlias = null, string $joinType = Thelia\Model\om\Criteria::LEFT_JOIN )`

Use the Image relation Image object

Use the Image relation Image object

#### Parameters

$relationAlias
  `string`
  $relationAlias optional alias for the relation, to be used as main alias in the secondary query
$joinType
  `string`
  $joinType Accepted values are null, 'left join', 'right join', 'inner join'

#### Returns

``Thelia\Model\ImageQuery``
A secondary query class using the current class as primary query

#### See

useQuery()

`public `Thelia\Model\ProductQuery``

# `filterByDocument( `Thelia\Model\Document`|PropelObjectCollection $document, string $comparison = null )`

Filter the query by a related Document object

Filter the query by a related Document object

#### Parameters

$document
  ``Thelia\Model\Document`|PropelObjectCollection`
  $document the related object to use as filter
$comparison
  `string`
  $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

#### Throws

`PropelException`
- if the provided filter is invalid.

`public `Thelia\Model\ProductQuery``

# `joinDocument( string $relationAlias = null, string $joinType = Thelia\Model\om\Criteria::LEFT_JOIN )`

Adds a JOIN clause to the query using the Document relation

Adds a JOIN clause to the query using the Document relation

#### Parameters

$relationAlias
  `string`
  $relationAlias optional alias for the relation
$joinType
  `string`
  $joinType Accepted values are null, 'left join', 'right join', 'inner join'

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\DocumentQuery``

# `useDocumentQuery( string $relationAlias = null, string $joinType = Thelia\Model\om\Criteria::LEFT_JOIN )`

Use the Document relation Document object

Use the Document relation Document object

#### Parameters

$relationAlias
  `string`
  $relationAlias optional alias for the relation, to be used as main alias in the secondary query
$joinType
  `string`
  $joinType Accepted values are null, 'left join', 'right join', 'inner join'

#### Returns

``Thelia\Model\DocumentQuery``
A secondary query class using the current class as primary query

#### See

useQuery()

`public `Thelia\Model\ProductQuery``

# `filterByAccessoryRelatedByProductId( `Thelia\Model\Accessory`|PropelObjectCollection $accessory, string $comparison = null )`

Filter the query by a related Accessory object

Filter the query by a related Accessory object

#### Parameters

$accessory
  ``Thelia\Model\Accessory`|PropelObjectCollection`
  $accessory the related object to use as filter
$comparison
  `string`
  $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

#### Throws

`PropelException`
- if the provided filter is invalid.

`public `Thelia\Model\ProductQuery``

# `joinAccessoryRelatedByProductId( string $relationAlias = null, string $joinType = Thelia\Model\om\Criteria::INNER_JOIN )`

Adds a JOIN clause to the query using the AccessoryRelatedByProductId relation

Adds a JOIN clause to the query using the AccessoryRelatedByProductId relation

#### Parameters

$relationAlias
  `string`
  $relationAlias optional alias for the relation
$joinType
  `string`
  $joinType Accepted values are null, 'left join', 'right join', 'inner join'

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\AccessoryQuery``

# `useAccessoryRelatedByProductIdQuery( string $relationAlias = null, string $joinType = Thelia\Model\om\Criteria::INNER_JOIN )`

Use the AccessoryRelatedByProductId relation Accessory object

Use the AccessoryRelatedByProductId relation Accessory object

#### Parameters

$relationAlias
  `string`
  $relationAlias optional alias for the relation, to be used as main alias in the secondary query
$joinType
  `string`
  $joinType Accepted values are null, 'left join', 'right join', 'inner join'

#### Returns

``Thelia\Model\AccessoryQuery``
A secondary query class using the current class as primary query

#### See

useQuery()

`public `Thelia\Model\ProductQuery``

# `filterByAccessoryRelatedByAccessory( `Thelia\Model\Accessory`|PropelObjectCollection $accessory, string $comparison = null )`

Filter the query by a related Accessory object

Filter the query by a related Accessory object

#### Parameters

$accessory
  ``Thelia\Model\Accessory`|PropelObjectCollection`
  $accessory the related object to use as filter
$comparison
  `string`
  $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

#### Throws

`PropelException`
- if the provided filter is invalid.

`public `Thelia\Model\ProductQuery``

# `joinAccessoryRelatedByAccessory( string $relationAlias = null, string $joinType = Thelia\Model\om\Criteria::INNER_JOIN )`

Adds a JOIN clause to the query using the AccessoryRelatedByAccessory relation

Adds a JOIN clause to the query using the AccessoryRelatedByAccessory relation

#### Parameters

$relationAlias
  `string`
  $relationAlias optional alias for the relation
$joinType
  `string`
  $joinType Accepted values are null, 'left join', 'right join', 'inner join'

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\AccessoryQuery``

# `useAccessoryRelatedByAccessoryQuery( string $relationAlias = null, string $joinType = Thelia\Model\om\Criteria::INNER_JOIN )`

Use the AccessoryRelatedByAccessory relation Accessory object

Use the AccessoryRelatedByAccessory relation Accessory object

#### Parameters

$relationAlias
  `string`
  $relationAlias optional alias for the relation, to be used as main alias in the secondary query
$joinType
  `string`
  $joinType Accepted values are null, 'left join', 'right join', 'inner join'

#### Returns

``Thelia\Model\AccessoryQuery``
A secondary query class using the current class as primary query

#### See

useQuery()

`public `Thelia\Model\ProductQuery``

# `filterByRewriting( `Thelia\Model\Rewriting`|PropelObjectCollection $rewriting, string $comparison = null )`

Filter the query by a related Rewriting object

Filter the query by a related Rewriting object

#### Parameters

$rewriting
  ``Thelia\Model\Rewriting`|PropelObjectCollection`
  $rewriting the related object to use as filter
$comparison
  `string`
  $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

#### Throws

`PropelException`
- if the provided filter is invalid.

`public `Thelia\Model\ProductQuery``

# `joinRewriting( string $relationAlias = null, string $joinType = Thelia\Model\om\Criteria::LEFT_JOIN )`

Adds a JOIN clause to the query using the Rewriting relation

Adds a JOIN clause to the query using the Rewriting relation

#### Parameters

$relationAlias
  `string`
  $relationAlias optional alias for the relation
$joinType
  `string`
  $joinType Accepted values are null, 'left join', 'right join', 'inner join'

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\RewritingQuery``

# `useRewritingQuery( string $relationAlias = null, string $joinType = Thelia\Model\om\Criteria::LEFT_JOIN )`

Use the Rewriting relation Rewriting object

Use the Rewriting relation Rewriting object

#### Parameters

$relationAlias
  `string`
  $relationAlias optional alias for the relation, to be used as main alias in the secondary query
$joinType
  `string`
  $joinType Accepted values are null, 'left join', 'right join', 'inner join'

#### Returns

``Thelia\Model\RewritingQuery``
A secondary query class using the current class as primary query

#### See

useQuery()

`public `Thelia\Model\ProductQuery``

# `filterByProductI18n( `Thelia\Model\ProductI18n`|PropelObjectCollection $productI18n, string $comparison = null )`

Filter the query by a related ProductI18n object

Filter the query by a related ProductI18n object

#### Parameters

$productI18n
  ``Thelia\Model\ProductI18n`|PropelObjectCollection`
  $productI18n the related object to use as filter
$comparison
  `string`
  $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

#### Throws

`PropelException`
- if the provided filter is invalid.

`public `Thelia\Model\ProductQuery``

# `joinProductI18n( string $relationAlias = null, string $joinType = 'LEFT JOIN' )`

Adds a JOIN clause to the query using the ProductI18n relation

Adds a JOIN clause to the query using the ProductI18n relation

#### Parameters

$relationAlias
  `string`
  $relationAlias optional alias for the relation
$joinType
  `string`
  $joinType Accepted values are null, 'left join', 'right join', 'inner join'

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\ProductI18nQuery``

# `useProductI18nQuery( string $relationAlias = null, string $joinType = 'LEFT JOIN' )`

Use the ProductI18n relation ProductI18n object

Use the ProductI18n relation ProductI18n object

#### Parameters

$relationAlias
  `string`
  $relationAlias optional alias for the relation, to be used as main alias in the secondary query
$joinType
  `string`
  $joinType Accepted values are null, 'left join', 'right join', 'inner join'

#### Returns

``Thelia\Model\ProductI18nQuery``
A secondary query class using the current class as primary query

#### See

useQuery()

`public `Thelia\Model\ProductQuery``

# `filterByProductVersion( `Thelia\Model\ProductVersion`|PropelObjectCollection $productVersion, string $comparison = null )`

Filter the query by a related ProductVersion object

Filter the query by a related ProductVersion object

#### Parameters

$productVersion
  ``Thelia\Model\ProductVersion`|PropelObjectCollection`
  $productVersion the related object to use as filter
$comparison
  `string`
  $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

#### Throws

`PropelException`
- if the provided filter is invalid.

`public `Thelia\Model\ProductQuery``

# `joinProductVersion( string $relationAlias = null, string $joinType = Thelia\Model\om\Criteria::INNER_JOIN )`

Adds a JOIN clause to the query using the ProductVersion relation

Adds a JOIN clause to the query using the ProductVersion relation

#### Parameters

$relationAlias
  `string`
  $relationAlias optional alias for the relation
$joinType
  `string`
  $joinType Accepted values are null, 'left join', 'right join', 'inner join'

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\ProductVersionQuery``

# `useProductVersionQuery( string $relationAlias = null, string $joinType = Thelia\Model\om\Criteria::INNER_JOIN )`

Use the ProductVersion relation ProductVersion object

Use the ProductVersion relation ProductVersion object

#### Parameters

$relationAlias
  `string`
  $relationAlias optional alias for the relation, to be used as main alias in the secondary query
$joinType
  `string`
  $joinType Accepted values are null, 'left join', 'right join', 'inner join'

#### Returns

``Thelia\Model\ProductVersionQuery``
A secondary query class using the current class as primary query

#### See

useQuery()

`public `Thelia\Model\ProductQuery``

# `prune( `Thelia\Model\Product` $product = null )`

Exclude object from result

Exclude object from result

#### Parameters

$product
  ``Thelia\Model\Product``
  $product Object to remove from the list of results

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\ProductQuery``

# `recentlyUpdated( integer $nbDays = 7 )`

Filter by the latest updated

Filter by the latest updated

#### Parameters

$nbDays
  `integer`
  $nbDays Maximum age of the latest update in days

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\ProductQuery``

# `lastUpdatedFirst( )`

Order by update date desc

Order by update date desc

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\ProductQuery``

# `firstUpdatedFirst( )`

Order by update date asc

Order by update date asc

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\ProductQuery``

# `recentlyCreated( integer $nbDays = 7 )`

Filter by the latest created

Filter by the latest created

#### Parameters

$nbDays
  `integer`
  $nbDays Maximum age of in days

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\ProductQuery``

# `lastCreatedFirst( )`

Order by create date desc

Order by create date desc

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\ProductQuery``

# `firstCreatedFirst( )`

Order by create date asc

Order by create date asc

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\ProductQuery``

# `joinI18n( string $locale = 'en_EN', string $relationAlias = null, string $joinType = Thelia\Model\om\Criteria::LEFT_JOIN )`

Adds a JOIN clause to the query using the i18n relation

Adds a JOIN clause to the query using the i18n relation

#### Parameters

$locale
  `string`
  $locale Locale to use for the join condition, e.g. 'fr_FR'
$relationAlias
  `string`
  $relationAlias optional alias for the relation
$joinType
  `string`
  $joinType Accepted values are null, 'left join', 'right join', 'inner join'. Defaults to left join.

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public `Thelia\Model\ProductQuery``

# `joinWithI18n( string $locale = 'en_EN', string $joinType = Thelia\Model\om\Criteria::LEFT_JOIN )`

Adds a JOIN clause to the query and hydrates the related I18n object. Shortcut for $c->joinI18n($locale)->with()

Adds a JOIN clause to the query and hydrates the related I18n object. Shortcut for $c->joinI18n($locale)->with()

#### Parameters

$locale
  `string`
  $locale Locale to use for the join condition, e.g. 'fr_FR'
$joinType
  `string`
  $joinType Accepted values are null, 'left join', 'right join', 'inner join'. Defaults to left join.

#### Returns

``Thelia\Model\ProductQuery``
The current query, for fluid interface

`public ProductI18nQuery`

# `useI18nQuery( string $locale = 'en_EN', string $relationAlias = null, string $joinType = Thelia\Model\om\Criteria::LEFT_JOIN )`

Use the I18n relation query object

Use the I18n relation query object

#### Parameters

$locale
  `string`
  $locale Locale to use for the join condition, e.g. 'fr_FR'
$relationAlias
  `string`
  $relationAlias optional alias for the relation
$joinType
  `string`
  $joinType Accepted values are null, 'left join', 'right join', 'inner join'. Defaults to left join.

#### Returns

`ProductI18nQuery`
A secondary query class using the current class as primary query

#### See

useQuery()

Magic methods summary

`public `Thelia\Model\ProductQuery``

# `orderById( mixed $order = Thelia\Model\om\Criteria::ASC )`

Order by the id column

Order by the id column

#### Parameters

$order
  `mixed`
  $order

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `orderByTaxRuleId( mixed $order = Thelia\Model\om\Criteria::ASC )`

Order by the tax_rule_id column

Order by the tax_rule_id column

#### Parameters

$order
  `mixed`
  $order

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `orderByRef( mixed $order = Thelia\Model\om\Criteria::ASC )`

Order by the ref column

Order by the ref column

#### Parameters

$order
  `mixed`
  $order

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `orderByPrice( mixed $order = Thelia\Model\om\Criteria::ASC )`

Order by the price column

Order by the price column

#### Parameters

$order
  `mixed`
  $order

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `orderByPrice2( mixed $order = Thelia\Model\om\Criteria::ASC )`

Order by the price2 column

Order by the price2 column

#### Parameters

$order
  `mixed`
  $order

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `orderByEcotax( mixed $order = Thelia\Model\om\Criteria::ASC )`

Order by the ecotax column

Order by the ecotax column

#### Parameters

$order
  `mixed`
  $order

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `orderByNewness( mixed $order = Thelia\Model\om\Criteria::ASC )`

Order by the newness column

Order by the newness column

#### Parameters

$order
  `mixed`
  $order

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `orderByPromo( mixed $order = Thelia\Model\om\Criteria::ASC )`

Order by the promo column

Order by the promo column

#### Parameters

$order
  `mixed`
  $order

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `orderByStock( mixed $order = Thelia\Model\om\Criteria::ASC )`

Order by the stock column

Order by the stock column

#### Parameters

$order
  `mixed`
  $order

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `orderByVisible( mixed $order = Thelia\Model\om\Criteria::ASC )`

Order by the visible column

Order by the visible column

#### Parameters

$order
  `mixed`
  $order

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `orderByWeight( mixed $order = Thelia\Model\om\Criteria::ASC )`

Order by the weight column

Order by the weight column

#### Parameters

$order
  `mixed`
  $order

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `orderByPosition( mixed $order = Thelia\Model\om\Criteria::ASC )`

Order by the position column

Order by the position column

#### Parameters

$order
  `mixed`
  $order

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `orderByCreatedAt( mixed $order = Thelia\Model\om\Criteria::ASC )`

Order by the created_at column

Order by the created_at column

#### Parameters

$order
  `mixed`
  $order

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `orderByUpdatedAt( mixed $order = Thelia\Model\om\Criteria::ASC )`

Order by the updated_at column

Order by the updated_at column

#### Parameters

$order
  `mixed`
  $order

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `orderByVersion( mixed $order = Thelia\Model\om\Criteria::ASC )`

Order by the version column

Order by the version column

#### Parameters

$order
  `mixed`
  $order

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `orderByVersionCreatedAt( mixed $order = Thelia\Model\om\Criteria::ASC )`

Order by the version_created_at column

Order by the version_created_at column

#### Parameters

$order
  `mixed`
  $order

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `orderByVersionCreatedBy( mixed $order = Thelia\Model\om\Criteria::ASC )`

Order by the version_created_by column

Order by the version_created_by column

#### Parameters

$order
  `mixed`
  $order

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `groupById( )`

Group by the id column

Group by the id column

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `groupByTaxRuleId( )`

Group by the tax_rule_id column

Group by the tax_rule_id column

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `groupByRef( )`

Group by the ref column

Group by the ref column

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `groupByPrice( )`

Group by the price column

Group by the price column

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `groupByPrice2( )`

Group by the price2 column

Group by the price2 column

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `groupByEcotax( )`

Group by the ecotax column

Group by the ecotax column

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `groupByNewness( )`

Group by the newness column

Group by the newness column

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `groupByPromo( )`

Group by the promo column

Group by the promo column

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `groupByStock( )`

Group by the stock column

Group by the stock column

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `groupByVisible( )`

Group by the visible column

Group by the visible column

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `groupByWeight( )`

Group by the weight column

Group by the weight column

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `groupByPosition( )`

Group by the position column

Group by the position column

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `groupByCreatedAt( )`

Group by the created_at column

Group by the created_at column

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `groupByUpdatedAt( )`

Group by the updated_at column

Group by the updated_at column

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `groupByVersion( )`

Group by the version column

Group by the version column

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `groupByVersionCreatedAt( )`

Group by the version_created_at column

Group by the version_created_at column

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `groupByVersionCreatedBy( )`

Group by the version_created_by column

Group by the version_created_by column

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `leftJoin( mixed $relation = )`

Adds a LEFT JOIN clause to the query

Adds a LEFT JOIN clause to the query

#### Parameters

$relation
  `mixed`
  $relation

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `rightJoin( mixed $relation = )`

Adds a RIGHT JOIN clause to the query

Adds a RIGHT JOIN clause to the query

#### Parameters

$relation
  `mixed`
  $relation

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `innerJoin( mixed $relation = )`

Adds a INNER JOIN clause to the query

Adds a INNER JOIN clause to the query

#### Parameters

$relation
  `mixed`
  $relation

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `leftJoinTaxRule( mixed $relationAlias = null )`

Adds a LEFT JOIN clause to the query using the TaxRule relation

Adds a LEFT JOIN clause to the query using the TaxRule relation

#### Parameters

$relationAlias
  `mixed`
  $relationAlias

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `rightJoinTaxRule( mixed $relationAlias = null )`

Adds a RIGHT JOIN clause to the query using the TaxRule relation

Adds a RIGHT JOIN clause to the query using the TaxRule relation

#### Parameters

$relationAlias
  `mixed`
  $relationAlias

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `innerJoinTaxRule( mixed $relationAlias = null )`

Adds a INNER JOIN clause to the query using the TaxRule relation

Adds a INNER JOIN clause to the query using the TaxRule relation

#### Parameters

$relationAlias
  `mixed`
  $relationAlias

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `leftJoinProductCategory( mixed $relationAlias = null )`

Adds a LEFT JOIN clause to the query using the ProductCategory relation

Adds a LEFT JOIN clause to the query using the ProductCategory relation

#### Parameters

$relationAlias
  `mixed`
  $relationAlias

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `rightJoinProductCategory( mixed $relationAlias = null )`

Adds a RIGHT JOIN clause to the query using the ProductCategory relation

Adds a RIGHT JOIN clause to the query using the ProductCategory relation

#### Parameters

$relationAlias
  `mixed`
  $relationAlias

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `innerJoinProductCategory( mixed $relationAlias = null )`

Adds a INNER JOIN clause to the query using the ProductCategory relation

Adds a INNER JOIN clause to the query using the ProductCategory relation

#### Parameters

$relationAlias
  `mixed`
  $relationAlias

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `leftJoinFeatureProd( mixed $relationAlias = null )`

Adds a LEFT JOIN clause to the query using the FeatureProd relation

Adds a LEFT JOIN clause to the query using the FeatureProd relation

#### Parameters

$relationAlias
  `mixed`
  $relationAlias

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `rightJoinFeatureProd( mixed $relationAlias = null )`

Adds a RIGHT JOIN clause to the query using the FeatureProd relation

Adds a RIGHT JOIN clause to the query using the FeatureProd relation

#### Parameters

$relationAlias
  `mixed`
  $relationAlias

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `innerJoinFeatureProd( mixed $relationAlias = null )`

Adds a INNER JOIN clause to the query using the FeatureProd relation

Adds a INNER JOIN clause to the query using the FeatureProd relation

#### Parameters

$relationAlias
  `mixed`
  $relationAlias

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `leftJoinStock( mixed $relationAlias = null )`

Adds a LEFT JOIN clause to the query using the Stock relation

Adds a LEFT JOIN clause to the query using the Stock relation

#### Parameters

$relationAlias
  `mixed`
  $relationAlias

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `rightJoinStock( mixed $relationAlias = null )`

Adds a RIGHT JOIN clause to the query using the Stock relation

Adds a RIGHT JOIN clause to the query using the Stock relation

#### Parameters

$relationAlias
  `mixed`
  $relationAlias

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `innerJoinStock( mixed $relationAlias = null )`

Adds a INNER JOIN clause to the query using the Stock relation

Adds a INNER JOIN clause to the query using the Stock relation

#### Parameters

$relationAlias
  `mixed`
  $relationAlias

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `leftJoinContentAssoc( mixed $relationAlias = null )`

Adds a LEFT JOIN clause to the query using the ContentAssoc relation

Adds a LEFT JOIN clause to the query using the ContentAssoc relation

#### Parameters

$relationAlias
  `mixed`
  $relationAlias

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `rightJoinContentAssoc( mixed $relationAlias = null )`

Adds a RIGHT JOIN clause to the query using the ContentAssoc relation

Adds a RIGHT JOIN clause to the query using the ContentAssoc relation

#### Parameters

$relationAlias
  `mixed`
  $relationAlias

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `innerJoinContentAssoc( mixed $relationAlias = null )`

Adds a INNER JOIN clause to the query using the ContentAssoc relation

Adds a INNER JOIN clause to the query using the ContentAssoc relation

#### Parameters

$relationAlias
  `mixed`
  $relationAlias

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `leftJoinImage( mixed $relationAlias = null )`

Adds a LEFT JOIN clause to the query using the Image relation

Adds a LEFT JOIN clause to the query using the Image relation

#### Parameters

$relationAlias
  `mixed`
  $relationAlias

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `rightJoinImage( mixed $relationAlias = null )`

Adds a RIGHT JOIN clause to the query using the Image relation

Adds a RIGHT JOIN clause to the query using the Image relation

#### Parameters

$relationAlias
  `mixed`
  $relationAlias

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `innerJoinImage( mixed $relationAlias = null )`

Adds a INNER JOIN clause to the query using the Image relation

Adds a INNER JOIN clause to the query using the Image relation

#### Parameters

$relationAlias
  `mixed`
  $relationAlias

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `leftJoinDocument( mixed $relationAlias = null )`

Adds a LEFT JOIN clause to the query using the Document relation

Adds a LEFT JOIN clause to the query using the Document relation

#### Parameters

$relationAlias
  `mixed`
  $relationAlias

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `rightJoinDocument( mixed $relationAlias = null )`

Adds a RIGHT JOIN clause to the query using the Document relation

Adds a RIGHT JOIN clause to the query using the Document relation

#### Parameters

$relationAlias
  `mixed`
  $relationAlias

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `innerJoinDocument( mixed $relationAlias = null )`

Adds a INNER JOIN clause to the query using the Document relation

Adds a INNER JOIN clause to the query using the Document relation

#### Parameters

$relationAlias
  `mixed`
  $relationAlias

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `leftJoinAccessoryRelatedByProductId( mixed $relationAlias = null )`

Adds a LEFT JOIN clause to the query using the AccessoryRelatedByProductId relation

Adds a LEFT JOIN clause to the query using the AccessoryRelatedByProductId relation

#### Parameters

$relationAlias
  `mixed`
  $relationAlias

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `rightJoinAccessoryRelatedByProductId( mixed $relationAlias = null )`

Adds a RIGHT JOIN clause to the query using the AccessoryRelatedByProductId relation

Adds a RIGHT JOIN clause to the query using the AccessoryRelatedByProductId relation

#### Parameters

$relationAlias
  `mixed`
  $relationAlias

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `innerJoinAccessoryRelatedByProductId( mixed $relationAlias = null )`

Adds a INNER JOIN clause to the query using the AccessoryRelatedByProductId relation

Adds a INNER JOIN clause to the query using the AccessoryRelatedByProductId relation

#### Parameters

$relationAlias
  `mixed`
  $relationAlias

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `leftJoinAccessoryRelatedByAccessory( mixed $relationAlias = null )`

Adds a LEFT JOIN clause to the query using the AccessoryRelatedByAccessory relation

Adds a LEFT JOIN clause to the query using the AccessoryRelatedByAccessory relation

#### Parameters

$relationAlias
  `mixed`
  $relationAlias

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `rightJoinAccessoryRelatedByAccessory( mixed $relationAlias = null )`

Adds a RIGHT JOIN clause to the query using the AccessoryRelatedByAccessory relation

Adds a RIGHT JOIN clause to the query using the AccessoryRelatedByAccessory relation

#### Parameters

$relationAlias
  `mixed`
  $relationAlias

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `innerJoinAccessoryRelatedByAccessory( mixed $relationAlias = null )`

Adds a INNER JOIN clause to the query using the AccessoryRelatedByAccessory relation

Adds a INNER JOIN clause to the query using the AccessoryRelatedByAccessory relation

#### Parameters

$relationAlias
  `mixed`
  $relationAlias

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `leftJoinRewriting( mixed $relationAlias = null )`

Adds a LEFT JOIN clause to the query using the Rewriting relation

Adds a LEFT JOIN clause to the query using the Rewriting relation

#### Parameters

$relationAlias
  `mixed`
  $relationAlias

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `rightJoinRewriting( mixed $relationAlias = null )`

Adds a RIGHT JOIN clause to the query using the Rewriting relation

Adds a RIGHT JOIN clause to the query using the Rewriting relation

#### Parameters

$relationAlias
  `mixed`
  $relationAlias

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `innerJoinRewriting( mixed $relationAlias = null )`

Adds a INNER JOIN clause to the query using the Rewriting relation

Adds a INNER JOIN clause to the query using the Rewriting relation

#### Parameters

$relationAlias
  `mixed`
  $relationAlias

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `leftJoinProductI18n( mixed $relationAlias = null )`

Adds a LEFT JOIN clause to the query using the ProductI18n relation

Adds a LEFT JOIN clause to the query using the ProductI18n relation

#### Parameters

$relationAlias
  `mixed`
  $relationAlias

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `rightJoinProductI18n( mixed $relationAlias = null )`

Adds a RIGHT JOIN clause to the query using the ProductI18n relation

Adds a RIGHT JOIN clause to the query using the ProductI18n relation

#### Parameters

$relationAlias
  `mixed`
  $relationAlias

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `innerJoinProductI18n( mixed $relationAlias = null )`

Adds a INNER JOIN clause to the query using the ProductI18n relation

Adds a INNER JOIN clause to the query using the ProductI18n relation

#### Parameters

$relationAlias
  `mixed`
  $relationAlias

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `leftJoinProductVersion( mixed $relationAlias = null )`

Adds a LEFT JOIN clause to the query using the ProductVersion relation

Adds a LEFT JOIN clause to the query using the ProductVersion relation

#### Parameters

$relationAlias
  `mixed`
  $relationAlias

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `rightJoinProductVersion( mixed $relationAlias = null )`

Adds a RIGHT JOIN clause to the query using the ProductVersion relation

Adds a RIGHT JOIN clause to the query using the ProductVersion relation

#### Parameters

$relationAlias
  `mixed`
  $relationAlias

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\ProductQuery``

# `innerJoinProductVersion( mixed $relationAlias = null )`

Adds a INNER JOIN clause to the query using the ProductVersion relation

Adds a INNER JOIN clause to the query using the ProductVersion relation

#### Parameters

$relationAlias
  `mixed`
  $relationAlias

#### Returns

``Thelia\Model\ProductQuery``

`public `Thelia\Model\Product``

# `findOne( PropelPDO $con = null )`

Return the first Product matching the query

Return the first Product matching the query

#### Parameters

$con
  `PropelPDO`
  $con

#### Returns

``Thelia\Model\Product``

`public `Thelia\Model\Product``

# `findOneOrCreate( PropelPDO $con = null )`

Return the first Product matching the query, or a new Product object populated from the query conditions when no match is found

Return the first Product matching the query, or a new Product object populated from the query conditions when no match is found

#### Parameters

$con
  `PropelPDO`
  $con

#### Returns

``Thelia\Model\Product``

`public `Thelia\Model\Product``

# `findOneById( integer $id = )`

Return the first Product filtered by the id column

Return the first Product filtered by the id column

#### Parameters

$id
  `integer`
  $id

#### Returns

``Thelia\Model\Product``

`public `Thelia\Model\Product``

# `findOneByTaxRuleId( integer $tax_rule_id = )`

Return the first Product filtered by the tax_rule_id column

Return the first Product filtered by the tax_rule_id column

#### Parameters

$tax_rule_id
  `integer`
  $tax_rule_id

#### Returns

``Thelia\Model\Product``

`public `Thelia\Model\Product``

# `findOneByRef( string $ref = )`

Return the first Product filtered by the ref column

Return the first Product filtered by the ref column

#### Parameters

$ref
  `string`
  $ref

#### Returns

``Thelia\Model\Product``

`public `Thelia\Model\Product``

# `findOneByPrice( float $price = )`

Return the first Product filtered by the price column

Return the first Product filtered by the price column

#### Parameters

$price
  `float`
  $price

#### Returns

``Thelia\Model\Product``

`public `Thelia\Model\Product``

# `findOneByPrice2( float $price2 = )`

Return the first Product filtered by the price2 column

Return the first Product filtered by the price2 column

#### Parameters

$price2
  `float`
  $price2

#### Returns

``Thelia\Model\Product``

`public `Thelia\Model\Product``

# `findOneByEcotax( float $ecotax = )`

Return the first Product filtered by the ecotax column

Return the first Product filtered by the ecotax column

#### Parameters

$ecotax
  `float`
  $ecotax

#### Returns

``Thelia\Model\Product``

`public `Thelia\Model\Product``

# `findOneByNewness( integer $newness = )`

Return the first Product filtered by the newness column

Return the first Product filtered by the newness column

#### Parameters

$newness
  `integer`
  $newness

#### Returns

``Thelia\Model\Product``

`public `Thelia\Model\Product``

# `findOneByPromo( integer $promo = )`

Return the first Product filtered by the promo column

Return the first Product filtered by the promo column

#### Parameters

$promo
  `integer`
  $promo

#### Returns

``Thelia\Model\Product``

`public `Thelia\Model\Product``

# `findOneByStock( integer $stock = )`

Return the first Product filtered by the stock column

Return the first Product filtered by the stock column

#### Parameters

$stock
  `integer`
  $stock

#### Returns

``Thelia\Model\Product``

`public `Thelia\Model\Product``

# `findOneByVisible( integer $visible = )`

Return the first Product filtered by the visible column

Return the first Product filtered by the visible column

#### Parameters

$visible
  `integer`
  $visible

#### Returns

``Thelia\Model\Product``

`public `Thelia\Model\Product``

# `findOneByWeight( float $weight = )`

Return the first Product filtered by the weight column

Return the first Product filtered by the weight column

#### Parameters

$weight
  `float`
  $weight

#### Returns

``Thelia\Model\Product``

`public `Thelia\Model\Product``

# `findOneByPosition( integer $position = )`

Return the first Product filtered by the position column

Return the first Product filtered by the position column

#### Parameters

$position
  `integer`
  $position

#### Returns

``Thelia\Model\Product``

`public `Thelia\Model\Product``

# `findOneByCreatedAt( string $created_at = )`

Return the first Product filtered by the created_at column

Return the first Product filtered by the created_at column

#### Parameters

$created_at
  `string`
  $created_at

#### Returns

``Thelia\Model\Product``

`public `Thelia\Model\Product``

# `findOneByUpdatedAt( string $updated_at = )`

Return the first Product filtered by the updated_at column

Return the first Product filtered by the updated_at column

#### Parameters

$updated_at
  `string`
  $updated_at

#### Returns

``Thelia\Model\Product``

`public `Thelia\Model\Product``

# `findOneByVersion( integer $version = )`

Return the first Product filtered by the version column

Return the first Product filtered by the version column

#### Parameters

$version
  `integer`
  $version

#### Returns

``Thelia\Model\Product``

`public `Thelia\Model\Product``

# `findOneByVersionCreatedAt( string $version_created_at = )`

Return the first Product filtered by the version_created_at column

Return the first Product filtered by the version_created_at column

#### Parameters

$version_created_at
  `string`
  $version_created_at

#### Returns

``Thelia\Model\Product``

`public `Thelia\Model\Product``

# `findOneByVersionCreatedBy( string $version_created_by = )`

Return the first Product filtered by the version_created_by column

Return the first Product filtered by the version_created_by column

#### Parameters

$version_created_by
  `string`
  $version_created_by

#### Returns

``Thelia\Model\Product``

`public array`

# `findById( integer $id = )`

Return Product objects filtered by the id column

Return Product objects filtered by the id column

#### Parameters

$id
  `integer`
  $id

#### Returns

`array`

`public array`

# `findByTaxRuleId( integer $tax_rule_id = )`

Return Product objects filtered by the tax_rule_id column

Return Product objects filtered by the tax_rule_id column

#### Parameters

$tax_rule_id
  `integer`
  $tax_rule_id

#### Returns

`array`

`public array`

# `findByRef( string $ref = )`

Return Product objects filtered by the ref column

Return Product objects filtered by the ref column

#### Parameters

$ref
  `string`
  $ref

#### Returns

`array`

`public array`

# `findByPrice( float $price = )`

Return Product objects filtered by the price column

Return Product objects filtered by the price column

#### Parameters

$price
  `float`
  $price

#### Returns

`array`

`public array`

# `findByPrice2( float $price2 = )`

Return Product objects filtered by the price2 column

Return Product objects filtered by the price2 column

#### Parameters

$price2
  `float`
  $price2

#### Returns

`array`

`public array`

# `findByEcotax( float $ecotax = )`

Return Product objects filtered by the ecotax column

Return Product objects filtered by the ecotax column

#### Parameters

$ecotax
  `float`
  $ecotax

#### Returns

`array`

`public array`

# `findByNewness( integer $newness = )`

Return Product objects filtered by the newness column

Return Product objects filtered by the newness column

#### Parameters

$newness
  `integer`
  $newness

#### Returns

`array`

`public array`

# `findByPromo( integer $promo = )`

Return Product objects filtered by the promo column

Return Product objects filtered by the promo column

#### Parameters

$promo
  `integer`
  $promo

#### Returns

`array`

`public array`

# `findByStock( integer $stock = )`

Return Product objects filtered by the stock column

Return Product objects filtered by the stock column

#### Parameters

$stock
  `integer`
  $stock

#### Returns

`array`

`public array`

# `findByVisible( integer $visible = )`

Return Product objects filtered by the visible column

Return Product objects filtered by the visible column

#### Parameters

$visible
  `integer`
  $visible

#### Returns

`array`

`public array`

# `findByWeight( float $weight = )`

Return Product objects filtered by the weight column

Return Product objects filtered by the weight column

#### Parameters

$weight
  `float`
  $weight

#### Returns

`array`

`public array`

# `findByPosition( integer $position = )`

Return Product objects filtered by the position column

Return Product objects filtered by the position column

#### Parameters

$position
  `integer`
  $position

#### Returns

`array`

`public array`

# `findByCreatedAt( string $created_at = )`

Return Product objects filtered by the created_at column

Return Product objects filtered by the created_at column

#### Parameters

$created_at
  `string`
  $created_at

#### Returns

`array`

`public array`

# `findByUpdatedAt( string $updated_at = )`

Return Product objects filtered by the updated_at column

Return Product objects filtered by the updated_at column

#### Parameters

$updated_at
  `string`
  $updated_at

#### Returns

`array`

`public array`

# `findByVersion( integer $version = )`

Return Product objects filtered by the version column

Return Product objects filtered by the version column

#### Parameters

$version
  `integer`
  $version

#### Returns

`array`

`public array`

# `findByVersionCreatedAt( string $version_created_at = )`

Return Product objects filtered by the version_created_at column

Return Product objects filtered by the version_created_at column

#### Parameters

$version_created_at
  `string`
  $version_created_at

#### Returns

`array`

`public array`

# `findByVersionCreatedBy( string $version_created_by = )`

Return Product objects filtered by the version_created_by column

Return Product objects filtered by the version_created_by column

#### Parameters

$version_created_by
  `string`
  $version_created_by

#### Returns

`array`