Sans certitude :
Une requete SELECT FROM WHERE ORDER BY est-elle plus lente qu'un SELECT FROM ?
La logique voudrait que oui. Mais d'une maniere absolument pas significative (enfin dans le cadre d'une table avec un nombre d'enregistrement modéré ou d'index bien mis en place).
Une requete avec 2 conditions et 1 jointure vaut elle mieux que 13 requetes simple.
Pour moi, oui, cette fois-ci de maniere plus significative.
Pourquoi ?
Tout simplement parce que comme je te l'ai dit plus haut, d'un point de vue traitement en mémoire dans le SGBD, à ce niveau de complexité, ce n'est pas significatif. Ce qui va être significatif, c'est que dans un cas, tu vas envoyer la requete une fois, et recevoir une réponse, soit un seul appel à la base. Dans l'autre cas, tu vas envoyer treize fois une requete, et recevoir treize fois une réponse. Soit 13 appels à la base.
Dans les deux cas, la taille totale des réponses sera identique, par contre, dans le deuxieme cas de figure, la taille totale des requetes sera plus grande que dans le premier cas.
En résumant, avec 13 requetes simple, tu fais 12 accès à la base supplémentaire, et tu fais transiter plus de données en terme d'octets. Pour peu que ton serveur de base de données et ton serveur Web ne soit pas le même, avec la lenteur du passage des octets par le réseau, ton temps devient significatif !
D'ou l'interet des procedures stockées également, qui te permette de limiter les accès à la base !