Forum de FilmDeCulte

Le forum cinéma le plus méchant du net...
Nous sommes le 18 Avr 2024, 22:59

Heures au format UTC + 1 heure




Poster un nouveau sujet Répondre au sujet  [ 23 messages ]  Aller à la page Précédente  1, 2
Auteur Message
 Sujet du message: Re: Question MySQL / PHP
MessagePosté: 09 Déc 2011, 17:47 
Hors ligne
Sacré trou du cul
Avatar de l’utilisateur

Inscription: 19 Juin 2005, 22:59
Messages: 11249
Il te plait pas mon array_reverse enculé ?

_________________
Delirium Tremens


Haut
 Profil  
 
 Sujet du message: Re: Question MySQL / PHP
MessagePosté: 09 Déc 2011, 23:26 
Hors ligne
Expert
Avatar de l’utilisateur

Inscription: 18 Aoû 2005, 23:40
Messages: 19416
Localisation: Rebirth Island
Nan sac à merde ! Le array_reverse rajoute une opération de prétraitement du tableau avant d'itérer dessus. Autant itérer directement à l'envers sur le tableau d'origine !


Haut
 Profil  
 
 Sujet du message: Re: Question MySQL / PHP
MessagePosté: 10 Déc 2011, 13:33 
Hors ligne
Sacré trou du cul
Avatar de l’utilisateur

Inscription: 19 Juin 2005, 22:59
Messages: 11249
deudtens a écrit:
Nan sac à merde ! Le array_reverse rajoute une opération de prétraitement du tableau avant d'itérer dessus. Autant itérer directement à l'envers sur le tableau d'origine !

Et le gagnant de la plus grosse bite est... ni deud ni Dédé. La meilleure solution après tests sur une table de 75 000 articles :

Code:
SELECT * FROM (SELECT * FROM tournois ORDER BY IDtournois DESC LIMIT 10) as t1 ORDER BY t1.IDtournois ASC


Mais c'est du chipotage de branleur, j'obtiens quasi les mêmes résultats sur les 3 solutions... (non je m'ennuie pas dans la vie)

_________________
Delirium Tremens


Haut
 Profil  
 
 Sujet du message: Re: Question MySQL / PHP
MessagePosté: 10 Déc 2011, 13:53 
Hors ligne
Le quoteur fou
Avatar de l’utilisateur

Inscription: 23 Juil 2005, 17:40
Messages: 11786
Localisation: Hill Valley
deudtens a écrit:
File ta boucle actuelle et je te la renverse.

<?php do { ?>
...
<?php
echo $ville;
echo $date;
echo $club;
echo $gagnants;
....
<?php } while ($tournoiextrait = mysql_fetch_assoc($tournoisrequis)); ?>

Delirium Tremens a écrit:
Code:
SELECT * FROM (SELECT * FROM tournois ORDER BY IDtournois DESC LIMIT 10) as t1 ORDER BY t1.IDtournois ASC

Merci. Jolie la syntaxe !

_________________
Image Tennis de Table Bordeaux


Haut
 Profil  
 
 Sujet du message: Re: Question MySQL / PHP
MessagePosté: 10 Déc 2011, 14:02 
Hors ligne
Expert
Avatar de l’utilisateur

Inscription: 18 Aoû 2005, 23:40
Messages: 19416
Localisation: Rebirth Island
Dédé :
Oui, on m'a dit ça ya pas longtemps que les requêtes imbriquées étaient performantes. Je suis très étonné par ça. Si j'avais rien à foutre je ferais plus de tests pour le constater. Après, personnellement, je trouve ça illisible, surtout quand c'est faisable en une seule requete.

Ça m'étonne pas que yait pas trop de différences entre les 3 solutions. 75 000 enregistrements ça reste petit.

Rotary :
En fait ton mysql_fetch_assoc fait un peu chier. Il oblige à parcourir le tableau dans l'ordre. Donc la requête de Dédé est ptet meilleure. Si tu veux le faire en php, faut passer par une variable intermediaire :
Code:
<?php
    $results = array();
    while($result = mysql_fetch_assoc($tournoisrequis))
        $results[] = $result;
?>
<table>
    <?php for ($i = sizeof($results); $i >= 0; --$i): ?>
        <tr>
            <td><?php echo $ville; ?></td>
            <td><?php echo $date; ?></td>
             ...
        </tr>
    <?php endfor; ?>
</table>


Haut
 Profil  
 
 Sujet du message: Re: Question MySQL / PHP
MessagePosté: 10 Déc 2011, 14:20 
Hors ligne
Le quoteur fou
Avatar de l’utilisateur

Inscription: 23 Juil 2005, 17:40
Messages: 11786
Localisation: Hill Valley
Merci.
J'ai choisi la requête imbriquée de Dédé, car une seule ligne à changer dans mon script. Principe du moindre effort.

_________________
Image Tennis de Table Bordeaux


Haut
 Profil  
 
 Sujet du message: Re: Question MySQL / PHP
MessagePosté: 10 Déc 2011, 14:39 
Hors ligne
Sacré trou du cul
Avatar de l’utilisateur

Inscription: 19 Juin 2005, 22:59
Messages: 11249
deudtens a écrit:
Dédé :
Oui, on m'a dit ça ya pas longtemps que les requêtes imbriquées étaient performantes. Je suis très étonné par ça. Si j'avais rien à foutre je ferais plus de tests pour le constater. Après, personnellement, je trouve ça illisible, surtout quand c'est faisable en une seule requete.

Ça m'étonne pas que yait pas trop de différences entre les 3 solutions. 75 000 enregistrements ça reste petit.

Au départ j'étais parti sur une table de 16 enregistrements, je me suis dit que c'était con, après j'ai hésité avec une table de 1 000 000, mais 75 000 c'est un usage plus courant je pense (surtout pour du MySQL)... Après je pense que ça reste de la très petite optimisation car sur un petit site, la base est tellement légère qu'aucune solution ne sera vraiment beaucoup plus performante qu'une autre, et sur un gros, tu auras tout un système de cache (si possible à "froid") qui fera que même si différence il y a (légère bien entendu), tu la minimiseras... Et pareil, est-ce que l'usage d'une table temporaire ne serait pas plus performant ? Sur une grosse table je pense que oui... Mais c'est vraiment de l'optimisation de pur programmeur (dont je n'ai ni la logique ni la formation, là c'était juste pour m'amuser et parce que j'ai pensé après à la requête imbriquée) et il faudrait prendre en compte plein d'autres choses, la conso processeur, la conso mémoire, accélérateurs PHP ou pas... et on pourrait avoir le débat sur des milliers de trucs, me souviens d'un débat simples quotes, doubles quotes pour PHP, et echo contre print... un moment je pense qu'il faut lâcher (surtout pour du petit site (même sur un site à plusieurs millions de pages vues/jour, je laisse tomber les tests sur certains trucs en me disant que le cache fera son boulot derrière)). Mais sinon, je trouve ça plutôt clair moi les requêtes imbriquées, tant que tu n'en as pas 60 000...

_________________
Delirium Tremens


Haut
 Profil  
 
 Sujet du message: Re: Question MySQL / PHP
MessagePosté: 10 Déc 2011, 15:00 
Hors ligne
Expert
Avatar de l’utilisateur

Inscription: 18 Aoû 2005, 23:40
Messages: 19416
Localisation: Rebirth Island
Ouais les débats à la con, j'en suis en plein dedans avec un crétin au boulot qui veut à tout prix imposer ses simple quotes car il gagne un picomillieme de secondes en perfs...


Haut
 Profil  
 
Afficher les messages postés depuis:  Trier par  
Poster un nouveau sujet Répondre au sujet  [ 23 messages ]  Aller à la page Précédente  1, 2

Heures au format UTC + 1 heure


Articles en relation
 Sujets   Auteur   Réponses   Vus   Dernier message 
Aucun nouveau message non-lu dans ce sujet. Petite question MySQL

Cosmo

4

1043

28 Avr 2008, 20:40

Delirium Tremens Voir le dernier message

Aucun nouveau message non-lu dans ce sujet. Requête en MySQL (une de plus)

Cosmo

9

1415

10 Fév 2011, 09:38

deudtens Voir le dernier message

Aucun nouveau message non-lu dans ce sujet. question

Jericho Cane

5

1402

19 Juin 2009, 07:19

Zad Voir le dernier message

Aucun nouveau message non-lu dans ce sujet. question wi-fi

Zad

10

1781

15 Avr 2006, 18:46

Zad Voir le dernier message

Aucun nouveau message non-lu dans ce sujet. Question NAS

[ Aller à la pageAller à la page: 1, 2 ]

Delirium Tremens

26

2995

11 Sep 2013, 17:24

Delirium Tremens Voir le dernier message

Aucun nouveau message non-lu dans ce sujet. question Word

skip mccoy

3

1341

10 Juil 2008, 15:31

Arnotte Voir le dernier message

Aucun nouveau message non-lu dans ce sujet. Question Newsletter

Zaphod

3

1506

29 Juin 2006, 16:09

Janet Voir le dernier message

Aucun nouveau message non-lu dans ce sujet. Une petite question

the black addiction

7

1176

17 Juin 2009, 20:00

Pandor Voir le dernier message

Aucun nouveau message non-lu dans ce sujet. question réseau

Sam

10

1471

10 Avr 2007, 18:20

Sam Voir le dernier message

Aucun nouveau message non-lu dans ce sujet. Question sécurité wi-fi

Sam

5

1246

24 Juil 2007, 16:52

Delirium Tremens Voir le dernier message

 


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités


Vous ne pouvez pas poster de nouveaux sujets
Vous ne pouvez pas répondre aux sujets
Vous ne pouvez pas éditer vos messages
Vous ne pouvez pas supprimer vos messages

Rechercher:
Aller à:  
Powered by phpBB® Forum Software © phpBB Group
Traduction par: phpBB-fr.com
phpBB SEO
Hébergement mutualisé : Avenue Du Web