Matrixkid Posted January 30, 2009 Share Posted January 30, 2009 Hi there, I have a column with some fields that I need to switch around the way it is stored. ex: field: id KILLERS, THE USED, THE PEOPLE, THE MUSIC, THE I want to run a query to make it into THE KILLERS THE USED THE PEOPLE THE MUSIC So far ive got this far, but just need the end part. UPDATE _testing set id = replace(id,'%, THE', I am unclear as to how to finish this statement. Thanks! Link to comment https://forums.phpfreaks.com/topic/143176-solved-update-replace-query/ Share on other sites More sharing options...
fenway Posted February 2, 2009 Share Posted February 2, 2009 Mysql doesn't support capturing parens like php. I suppose you could be sneaky like this: UPDATE _testing set id = IF( LOCATE( REVERSE(', THE'), REVERSE(yourField) ) = 1 ,CONCAT( 'THE ', REVERSE( SUBSTRING( REVERSE(yourField), LOCATE( REVERSE(', THE'), REVERSE(yourField) )+length(', THE') ) ) ) ,yourField ) Link to comment https://forums.phpfreaks.com/topic/143176-solved-update-replace-query/#findComment-752447 Share on other sites More sharing options...
Matrixkid Posted February 2, 2009 Author Share Posted February 2, 2009 Mysql doesn't support capturing parens like php. I suppose you could be sneaky like this: UPDATE _testing set id = IF( LOCATE( REVERSE(', THE'), REVERSE(yourField) ) = 1 ,CONCAT( 'THE ', REVERSE( SUBSTRING( REVERSE(yourField), LOCATE( REVERSE(', THE'), REVERSE(yourField) )+length(', THE') ) ) ) ,yourField ) Wow. thats just dirty. never thought of doing it like that. thanks for the help! I appreciate it Link to comment https://forums.phpfreaks.com/topic/143176-solved-update-replace-query/#findComment-752534 Share on other sites More sharing options...
fenway Posted February 3, 2009 Share Posted February 3, 2009 No problem... enjoy! Link to comment https://forums.phpfreaks.com/topic/143176-solved-update-replace-query/#findComment-753342 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.