Hello,

When I execute a query that has a subquery behind a comparison operator 
in its where-clause and the subquery returns an empty result, then the 
result of the complete query is exactly how I want it: also an empty 
result. Can I assume that this behaviour will stay the same in next 
versions of sqlite? Perhaps this case is described somewhere on the 
sqlite site, and I failed to find it and someone could point me to it?


An example of such a query is:

SELECT *
FROM ordercallback
WHERE account=@ACCOUNT
   AND cb_seq_num>(
     SELECT cb_seq_num
     FROM ordercallback
     WHERE cb_uuid=@CBUUID);



Why I ask is because that for example when the subquery returns more 
than one result different databases do different things. Eg. MySQL 
returns an error, sqlite does returns rows, etc. So I thought, perhaps 
the behavior when the subquery returns not 1 but many or zero rows may 
be undefined and could change in the future. I also searched a lot on 
this subject on the web, but all that I find is that it is said that the 
subquery is expected to return exactly one result which gives me the 
impression that everything else may perhaps be undefined.

Thanks,
Gunnar

Reply via email to