J'écris une procédure stockée où j'ai un paramètre d'entrée appelé my_size qui est un int, je veux être capable d'utiliser une clause limit dans une instruction select. Apparemment, ce n'est pas supporté, y a-t-il un moyen de contourner ce problème?Variable LIMIT Clause dans MySQL
# I want something like:
SELECT * FROM some_table LIMIT my_size;
# Instead of hardcoding a permanent limit:
SELECT * FROM some_table LIMIT 100;
Si vous avez le contrôle sur la version de MySQL que vous utilisez, il semble que cela est fixé à partir de v5.5.6. http://bugs.mysql.com/bug.php?id=11918 – Hammerite
trouvé une autre solution simple http://stackoverflow.com/a/4315661 – user3011839
Notez que dans * MySQL 5.7.16 * (et peut-être d'autres) le ' LIMIT @nrows OFFSET @ noffset' dans une routine stockée semble également être rejeté, alors qu'un 'LIMIT nrows OFFSET noffset' est accepté, aussi longtemps que vous 'DECLARE nrows INT; DÉCLARER noffset INT' au début de la routine. – Xenos