My bad, the = was my own typo just in the email, it's not in my actual query. I've tried using offset (delete...limit 50,999999) and it returns an error, and it is not documented (search that page you referenced for "offset").

On Oct 4, 2006, at 9:04 AM, Rob Desbois wrote:

DELETE does support the offset (http://dev.mysql.com/doc/refman/5.0/ en/delete.html) the problem is you have an erroneous equals character:

You wrote:
 DELETE FROM tablename ORDER BY creation DESC LIMIT=n
You need:
 DELETE FROM tablename ORDER BY creation DESC LIMIT offset, count

HTH,
--Rob


The offset is what I was thinking of - that would be the simplest -
but as far as I can tell, delete doesn't support the offset. It's not
documented, and it gives me an error when I try it. I was hoping to
avoid two queries but it sounds like that's what I might have to do.


On Oct 4, 2006, at 8:37 AM, Dan Julson wrote:

You can add an offset in the Limit statement.  Look at the Select
Syntax in
the docs.

There is an even simpler solution to this problem.  Use your
creation field
within a Where clause instead of using Order by and Limit.

-Dan


I'm trying to delete all but the newest n records.

DELETE FROM tablename ORDER BY creation DESC LIMIT=n

This does the opposite of what I want. Is there some way to tell it
to start the delete after n and delete all the remaining records?




--

MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe: http://lists.mysql.com/mysql? [EMAIL PROTECTED]


______________________________________________________________________
This email has been scanned by the MessageLabs Email Security System.
For more information please visit http://www.messagelabs.com/email
______________________________________________________________________


<

---------- Original Message ----------

FROM:      Brian Dunning <[EMAIL PROTECTED]>
TO:        mysql@lists.mysql.com
DATE:      Wed, 4 Oct 2006 08:49:48 -0700

SUBJECT:   Re: Deleting, skip the first n records

The offset is what I was thinking of - that would be the simplest -
but as far as I can tell, delete doesn't support the offset. It's not
documented, and it gives me an error when I try it. I was hoping to
avoid two queries but it sounds like that's what I might have to do.


On Oct 4, 2006, at 8:37 AM, Dan Julson wrote:

You can add an offset in the Limit statement.  Look at the Select
Syntax in
the docs.

There is an even simpler solution to this problem.  Use your
creation field
within a Where clause instead of using Order by and Limit.

-Dan


I'm trying to delete all but the newest n records.

DELETE FROM tablename ORDER BY creation DESC LIMIT=n

This does the opposite of what I want. Is there some way to tell it
to start the delete after n and delete all the remaining records?




--

MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe: http://lists.mysql.com/mysql? [EMAIL PROTECTED]


______________________________________________________________________
This email has been scanned by the MessageLabs Email Security System.
For more information please visit http://www.messagelabs.com/email
______________________________________________________________________


______________________________________________________________________
This email has been scanned by the MessageLabs Email Security System.
For more information please visit http://www.messagelabs.com/email
______________________________________________________________________

--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe: http://lists.mysql.com/mysql? [EMAIL PROTECTED]



--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to