Soeben hatte ich ein kniffliges Problem. Via htaccess sollte ein redirect gebaut werden. Im Querystring sollte eine Id getauscht werden, alles andere sollte mit übernommen werden.

Also aus:
http://www.domain.tld/index.php?site_id=147&content_id=4
sollte
http://www.domain.tld/index.php?site_id=236&content_id=4
werden

Die Lösung ist folgende Regel:

RewriteEngine on
RewriteCond %{QUERY_STRING} ^(.*)site_id=147(.*)$
RewriteRule ^(.*)$ /index.php?site_id=236%2 [R=307,L]

Folgende Stackoverflow Threads haben mir dabei geholfen
Redirects ausführlich erklärt
Rewrite part of query string with mod_rewrite