[pdo] Rowcount, count(*) of SQL_CALC_FOUND_ROWS

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Arjan -

Arjan -

04/10/2010 17:40:03
Quote Anchor link
Hey,

Op dit moment ben ik mij aan het oriënteren om de performance van mijn website te verbeteren. Nu kwam ik enkele tegenstrijdige verhalen tegen omtrent het retourneren van het aantal gevonden records.

Op http://www.mysqlperformanceblog.com/2007/08/28/to-sql_calc_found_rows-or-not-to-sql_calc_found_rows/ staat dat SQL_CALC_FOUND_ROWS erg traag is bij veel records ten opzichte van de COUNT(*) variant.

Nu gebruik ik PDO om te verbinden met de database en deze bevat een standaard functie, genaamd rowCount(), om de rijen te retourneren. Het schijnt zo te zijn dat rowCount() niet volledig wordt ondersteund in mysql, echter heb ik daar tot op heden niets van gemerkt (momenteel gebruik ik deze functie).

Het voordeel van een SQL_CALC_FOUND_ROWS is dat je maar 1 query hoeft uit te voeren (met een LIMIT) om het totaal aantal records te kunnen achterhalen. Echter schijnt dit dus gigantisch traag te zijn.

Nu is mijn vraag wat jullie gebruiken om het aantal records te retourneren en jullie de bevindingen van bovenstaande website kunnen bevestigen.
Gewijzigd op 04/10/2010 17:42:32 door Arjan -
 
PHP hulp

PHP hulp

29/09/2020 15:36:26
 
Justin S

Justin S

04/10/2010 18:44:47
Quote Anchor link
Dus als SQL_CALC_FOUND_ROWS te langzaam is, waarom gebruik je dan niet de COUNT(*) variant? Deze werkt ook gewoon met een PDO-query.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.