Brian,

My bad in steering you into the offset direction.  You are right.  Offset 
cannot be used within a delete statement.  However, if I am reading your 
email correctly, you could specify a cutoff date and use that in the Delete 
statement like this:

DELETE FROM tablename WHERE creation < cutoff_date

-Dan

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]

-- 
-Dan

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

Reply via email to