2009-09-08 7 views
4

Est-il possible de laisser MySQL LIMIT ont un décalage du nombre total de lignes divisées en deux, de sorte que la requête ressemblerait à quelque chose comme ceci:MySQL Math et COUNT (*) dans LIMITE

SELECT * FROM test LIMIT COUNT(*)/2, 5 

Où 5 est juste un nombre.

+0

Question similaire: http://stackoverflow.com/questions/1309137/mysql-set-limit-to-string – Aziz

Répondre

6

Ce n'est pas possible.

De l'documentation:

expressions peuvent être utilisées à plusieurs reprises dans des instructions SQL, comme dans les clauses ORDER BY ou HAVING des SELECT, dans la clause WHERE d'un SELECT, DELETE ou UPDATE instruction ou dans les instructions SET.

également de la SELECT documentation:

La clause LIMIT peut être utilisé pour limiter le nombre de lignes renvoyées par l'instruction SELECT. LIMIT prend un ou deux arguments numériques, qui doivent tous deux être des constantes entières non négatives (sauf lors de l'utilisation d'instructions préparées).

Vous devrez faire deux requêtes - une à compter, l'autre à limiter.