ORA-01795 : Surmonter la limite des expressions dans une liste
Lorsque vous tentez d'interroger une base de données avec plusieurs valeurs à l'aide d'une clause IN, vous pouvez rencontrer l'erreur « ORA-01795 : le nombre maximum d'expressions dans une liste est de 1 000 ». Cette erreur survient lorsque le nombre de valeurs dans la clause IN dépasse la limite de 1000.
Solution de contournement : diviser pour mieux régner
Pour contourner cette restriction, il est nécessaire de divisez la liste de valeurs en plusieurs groupes plus petits. La solution de contournement suivante peut être implémentée :
SELECT field1, field2, field3 FROM table1 WHERE name IN ( 'value1', 'value2', ... 'value10000+' );
SELECT field1, field2, field3 FROM table1 WHERE name IN ('value1', 'value2', ..., 'value999') OR name IN ('value1000', ..., 'value1999') OR ...;
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!