J'ai repéré un problème MySQL bizarre aux deux différentes manières dont j'effectuais une requête. Lorsque vous faites bouillir tout vers le bas, cette façon retourne plus de résultats:Requête MySQL utilisant l'opérateur 'in': pourquoi différents résultats w/quotes?
SELECT DISTINCT <stuff> FROM <tables>
WHERE promo_detail_store_id in (8214, 8217, 4952, 8194, ...)
Cette modification de la clause WHERE produit un sous-ensemble de ces résultats:
WHERE promo_detail_store_id in ('8214, 8217, 4952, 8194, ...')
(promo_detail_store_id est défini comme BIGINT dans une table MyISAM A l'origine cette liste de store_ids était beaucoup plus longue, et j'ai commencé à la couper de plus en plus courte en pensant peut-être qu'il y avait des limites étranges sur la longueur d'une chaîne. Mais non, cela vaut aussi pour de très petites chaînes/listes. Il est clair que quelque chose se passe dans les coulisses impliquant la coercition de type et peut-être comment fonctionne l'opérateur «in». Quelqu'un peut-il m'éclairer?