This is specific to MySQL, but could apply to any SQL DB.

Is there a way to put the results of one query to be used by another, without 
having that second query run on each
Iteration of the sub query?

Example:

SELECT * FROM TABLE WHERE LAST_UPDATE > (SELECT UPDATE_PROCEDURE());

The function UPDATE_PROCEDURE() returns a timestamp, and then updates itself 
with a new timestamp.

My workaround is:

SELECT * FROM TABLE WHERE LAST_UPDATE > (SELECT GET_PROCEDURE());
SELECT UPDATE_PROCEDURE();

Here the GET_PROCEDURE() only retrieves a value, and doesn't update it.

BUT...if there were half a million records in the TABLE, I'd prefer not to run 
the GET procedure half a million times
   To retrieve the same result which could add significant processing time 
(this would be run for each of the tables
   I'm mirroring on UV from MySQL .

George


_______________________________________________
U2-Users mailing list
[email protected]
http://listserver.u2ug.org/mailman/listinfo/u2-users

Reply via email to