J’ai besoin de réaliser des calculs : additionner des nombres présent dans la même colonne d’une table d’une base MySQL externe (quelques milliers de ligne).
Je dois réaliser cette opération une cinquantaine de fois. Forcément, c’est long (5 à 10 secondes) donc j’ai mis ces infos dans une div ajax, pour ne la charger que si l’utilisateur en a besoin.
Ma boucle ressemble à ça :
<BOUCLE_compter_effeleves_public_ecoles(mabaseexterne:annuaire){where ‹ département ›=’75’>[(#GET{EFFELEVES_PUBLIC_ECOLES}|plus{#NOMBRE_D_ELEVES}|set{EFFELEVES_PUBLIC_ECOLES})]
</BOUCLE_compter_effeleves_public_ecoles>
J’ai vu qu’on pouvait faire cela bien plus simplement (et rapidement ??) directement dans la requête SQL, avec quelque chose qui ressemblerait à ça :
SELECT SUM(NOMBRE_D_ELEVES) FROM annuaire where ‹ département ›=’75’
Savez-vous s’il existe sur SPIP une commande plus efficace qu’une boucle qui tourne 3000 fois pour additionner les valeurs d’un champ ?
Sinon, comment intégrer cette fonction SUM de MySQL dans une boucle SPIP sur une base externe ?
J’ai besoin de réaliser des calculs : additionner des nombres présent dans la même colonne d'une table d’une base MySQL externe (quelques milliers de ligne).
Je dois réaliser cette opération une cinquantaine de fois. Forcément, c’est long (5 à 10 secondes) donc j’ai mis ces infos dans une div ajax, pour ne la charger que si l’utilisateur en a besoin.
J’ai vu qu’on pouvait faire cela bien plus simplement (et rapidement ??) directement dans la requête SQL, avec quelque chose qui ressemblerait à ça :
SELECT SUM(NOMBRE_D_ELEVES) FROM annuaire where 'département'=’75'
Savez-vous s’il existe sur SPIP une commande plus efficace qu’une boucle qui tourne 3000 fois pour additionner les valeurs d’un champ ?
Sinon, comment intégrer cette fonction SUM de MySQL dans une boucle SPIP sur une base externe ?
Le dim. 21 mars 2021 à 08:41, RealET <real3t@gmail.com> a écrit :
Julien Delmas a écrit le 21/03/2021 à 00:34 :
Bonjour à tous,
Bonjour,
J’ai besoin de réaliser des calculs : additionner des nombres présent
dans la même colonne d’une table d’une base MySQL externe (quelques
milliers de ligne).
Je dois réaliser cette opération une cinquantaine de fois. Forcément,
c’est long (5 à 10 secondes) donc j’ai mis ces infos dans une div ajax,
pour ne la charger que si l’utilisateur en a besoin.
Ma boucle ressemble à ça :
<BOUCLE_compter_effeleves_public_ecoles(mabaseexterne:annuaire){where
‹ département ›=’75’>[(#GET{EFFELEVES_PUBLIC_ECOLES}|plus{#NOMBRE_D_ELEVES}|set{EFFELEVES_PUBLIC_ECOLES})]
</BOUCLE_compter_effeleves_public_ecoles>
J’ai vu qu’on pouvait faire cela bien plus simplement (et rapidement ??)
directement dans la requête SQL, avec quelque chose qui ressemblerait à
ça :
SELECT SUM(NOMBRE_D_ELEVES) FROM annuaire where ‹ département ›=’75’
Savez-vous s’il existe sur SPIP une commande plus efficace qu’une boucle
qui tourne 3000 fois pour additionner les valeurs d’un champ ?
Merci à vous deux pour vos réponses. Il est dommage que cela ne soit pas nativement pris en charge par SPIP, j’ai donc installé Bonux et ma requête est maintenant un peu plus rapide (de l’ordre d’une à deux secondes).
J’ai besoin de réaliser des calculs : additionner des nombres présent dans la même colonne d’une table d’une base MySQL externe (quelques milliers de ligne).
Je dois réaliser cette opération une cinquantaine de fois. Forcément, c’est long (5 à 10 secondes) donc j’ai mis ces infos dans une div ajax, pour ne la charger que si l’utilisateur en a besoin.
Ma boucle ressemble à ça :
<BOUCLE_compter_effeleves_public_ecoles(mabaseexterne:annuaire){where ‹ département ›=’75’>[(#GET{EFFELEVES_PUBLIC_ECOLES}|plus{#NOMBRE_D_ELEVES}|set{EFFELEVES_PUBLIC_ECOLES})]
</BOUCLE_compter_effeleves_public_ecoles>
J’ai vu qu’on pouvait faire cela bien plus simplement (et rapidement ??) directement dans la requête SQL, avec quelque chose qui ressemblerait à ça :
SELECT SUM(NOMBRE_D_ELEVES) FROM annuaire where ‹ département ›=’75’
Savez-vous s’il existe sur SPIP une commande plus efficace qu’une boucle qui tourne 3000 fois pour additionner les valeurs d’un champ ?
Sinon, comment intégrer cette fonction SUM de MySQL dans une boucle SPIP sur une base externe ?