On 5/10/07, James Tu <[EMAIL PROTECTED]> wrote:

David:
I definitely can get the result set using one query, but what I do
with the result set has me thinking about breaking it up into two
queries.


<Technical Details Omitted>

Ah, OK, I misunderstood.  You want to (get two results, each of which is
useful individually) rather than (issue two queries, then iterate in PHP to
combine the query results).

Two queries seem fine in that case.

Just one caution:  be aware that another process (such as a web user) can
sneak in in between your two queries and modify the database and render the
two sets of query results inconsistent with one another.

To give you an example, suppose you issue three queries in order (I'm going
to botch the syntax here):

SELECT COUNT(*) FROM USERS;  (call this A)

SELECT COUNT(*) FROM USERS WHERE IDX <= 10;  (call this B)

SELECT COUNT(*) FROM USERS WHERE IDX > 10;  (call this C)

It is very possible (in the presence of other simultaneous database
activity) that A != B + C.

It depends on the application whether this is significant.

Table locking is the easiest way to prevent this if it matters.

Dave.

Reply via email to