View Single Post
Old 04-25-2013, 03:22 PM  
camperjohn64
Confirmed User
 
Industry Role:
Join Date: Feb 2005
Location: Los Angeles
Posts: 1,531
A little MySQL help...

I have query that gets data from the database, processes that data, then deletes the original data, but I need help with the query to "delete only the data we just SELECTED".

Currently I have this
Code:
// Get data using query
SELECT bd_action,bd_target,SUM(bd_count) AS bd_count,bd_data FROM bd_action GROUP BY CONCAT(bd_data,bd_action,bd_target)

// Delete the data (actually just delete everything)
DELETE FROM bd_action
My problem is that when I add a "LIMIT 10000" to the original query, I need to add the same LIMIT to the delete statement

Modified but not working:
Code:
// Get data using query LIMIT 10000
SELECT bd_action,bd_target,SUM(bd_count) AS bd_count,bd_data FROM bd_action GROUP BY CONCAT(bd_data,bd_action,bd_target) LIMIT 10000

// ?? Delete the data that I just got (delete ONLY the stuff I just got in the previous query)
DELETE FROM bd_action WHERE (SELECT bd_action,bd_target,SUM(bd_count) AS bd_count,bd_data FROM bd_action GROUP BY CONCAT(bd_data,bd_action,bd_target) LIMIT 10000)
I can't find the right DELETE FROM query that will delete only those items I just queried.

Thoughts?
__________________
www.gimmiegirlproductions.com
camperjohn64 is offline   Share thread on Digg Share thread on Twitter Share thread on Reddit Share thread on Facebook Reply With Quote