It's worth noting, that you have to be careful with escaping. I tried this and didn't get any joy. I tried many combinations along these lines:
$query->setSpreadsheetQuery("name=\"Andrew John\"");
but to no avail. Running the traffic through an HTTP Inspector (and setting up your Zend HTTP Client to run through a proxy is another thing worth looking at!) I could see that the generated URLs from this work looking like this:
http://spreadsheets.google.com:80/feeds/list/spreadsheetkey/od6/private/full?sq=name%3D%5C%22Andrew+John%5C%22
This was resulting in Invalid Token (Status 400) errors. It didn't like the %5C%22 (\") escape sequence, but where was it getting it from?!
It turns out that there is a "parse_str" embedded deep in Zends code, which was adding slashes to the query string because for some reason (Ubuntu default php config?) magic_quotes_gpc was set to On in the php.ini file.
Turning this off allowed the generated URLs to revert to:
http://spreadsheets.google.com:80/feeds/list/spreadsheetkey/od6/private/full?sq=name%3D%22Andrew+John%22
and everything started working.
Incidentally, I had to resort to running it through an HTTP Inspector, because doing:
echo $query->getQueryUrl();
incorrectly reported that it was sending the string above without the %5C before each quote! Just goes to show, it never pays to trust what your code tells you...
So, if you have issues with structured queries in Zend framework's Gdata classes and just adding quotes doesn't solve it for you, have a quick look to see if you've got magic_quotes_gpc set to On!