From my second link: http://dev.mysql.com/doc/refman/5.1/...in-select.html
8.6.3.2. Query Cache SELECT Options
Two query cache-related options may be specified in SELECT statements:
SQL_CACHE
The query result is cached if it is cacheable and the value of the query_cache_type system variable is ON or DEMAND.
SQL_NO_CACHE
The server does not use the query cache. It neither checks the query cache to see whether the result is already cached, nor does it cache the query result. (Due to a limitation in the parser, a space character must precede and follow the SQL_NO_CACHE keyword; a nonspace such as a newline causes the server to check the query cache to see whether the result is already cached.)
Examples:
SELECT SQL_CACHE id, name FROM customer;
SELECT SQL_NO_CACHE id, name FROM customer;
Basically you include the no cache option in all your other queries.
That said, I am sure you are still building sql strings in your code. Don't. Learn how to use stored procedures. SQL belongs in the database: all you should have in any scripting language is the call to run the stored procedure, so the cache/no-cache directive will be in the stored procedure, not in the PDO processing.
Why stored procedures?
1. They can be developed and unit tested in isolation from any application code: being unit tested you know you are not going to get parse errors at runtime.
2. They are pre-compiled so the database does not have to parse the sql every time and calculate the execution plan: far more efficient and faster to execute.
3. Parametric stored procedures treat input params as data: they are safe from sql injection (unless you do dumb things like build sql query as a string and then call execute on it) and unescaped user input can not break the query.
4. They are easier to maintain: being all in one place, when you make changes to the database you do not have to search through all you code for the queries that need changing.