1

je stocke des éléments relationnels dans des domaines comme ID délimités par des virgules comme ceci:Obtenir des éléments Relationnel - le plus rapide

,4,12,8,16,198,

La raison pour les virgules avant et arrière sont pour la recherche avec LIKE '%,id,%'

J'essaye d'écrire une fonction de bootstrap pour récupérer tous ces éléments basés sur l'identification dans l'ordre des identifiants. Ma question est quelle est la façon la plus efficace de récupérer ces lignes? Les options que j'ai pensé sont:

  • Explode dans un tableau, une boucle sur tableau et effectuer des requêtes individuelles sélectionnez
  • One sélectionnez à l'aide IN() (je ne pense pas que cela maintiendra (Trop de questions?) l'ordre?)
  • Sélectionner tous les éléments dans le tableau connexe puis choisissez de ce tableau en fonction des ID (avantage peut-être avoir une seule requête?)

peut-être il faut mentionner que j'utilise AOP, donc je peux préparer des déclarations une fois puis les exécuter plusieurs fois pour des ID différents ... Je ne sais pas combien cela affecte les performances.

Toute aide serait grandement appréciée!

Merci.

Répondre

1

J'irais pour

ORDER BY FIELD(`id`, 4, 12, 8, 16, 198) 

en combinaison avec le IN

+0

C'était la pièce manquante. Je vous remercie! – RANGER

Questions connexes