That resembles the "Loopy Code" I discuss in my signature's tutorial. I recommend a read of that but, in summary, You also are unaware that query strings can only be examined (in mod_rewrite) by RewriteCond statements (the tutorial notes that very quickly).

Basically, what you want is to redirect from a usable link to an unusable (human format) link and then ask Apache to devine what you want it to serve.

Instead,

Test whether the {REQUEST_URI} is the original request (best to check the code in the tutorial).

Capture the query string (in whole or parts) then redirect to new format.