J'ai deux tables, une pour Strains et une pour StoreStrains. Les magasins vendent des souches de sorte qu'il peut y avoir plusieurs entrées dans "StoreStrains" pour un certain strain_id.Mysql IN Condition Limitation
Je fais un seul appel pour récupérer toutes les souches de la table de contraintes. Ensuite, je cartographie ces strain_ids comme si "1,2,3,4,5". Ensuite, je fais un autre appel SQL pour trouver ce que les magasins ont ces souches. Comme vous pouvez vous y attendre, cela retournera tous les StoreStrains avec un strain_id de 1-5. Mais si 3 de ces magasins portent la même souche, je renverrai 8 résultats, mais je limite à 5.
Sur une plus grande échelle (dans un DB avec 500,000+ StoreStrains), augmentant juste la limite à " obtenir tous les résultats "n'est pas une bonne option du tout. Donc, je me demande s'il y a une limite de façon
WHERE strain_id IN (strain_ids)
A 1 résultat par?
Je sais que je pouvais faire 5 appels SQL séparés comme ceci:
SELECT * FROM StoreStrains Where strain_id = ? LIMIT 1
Mais je préférerais tout cela se passe dans un appel sql si possible. Je vous remercie.
Si vous voulez un StoreStrain pour une souche, ce sont les critères à en sélectionner un? Quel StoreStrain devrait être montré? – Devart