Hello,
At this same example:
http://forums.smartclient.com/showthread.php?t=25340
I'm using a different criteria with a OperatorId.IN_SET.
Apparently works fine, but looking at the logs I saw a huge SQL using a lot of "OR" instead of the IN clause.
Well... this is weird, I'm concerned about some performance issues, how can I manage to use an IN clause?
Also, why is it always generating a complementary "NOT... IS NULL" statement? This also concerns me about performance.
Thank you!
Here is the code:
aaand here is the log:
At this same example:
http://forums.smartclient.com/showthread.php?t=25340
I'm using a different criteria with a OperatorId.IN_SET.
Apparently works fine, but looking at the logs I saw a huge SQL using a lot of "OR" instead of the IN clause.
Well... this is weird, I'm concerned about some performance issues, how can I manage to use an IN clause?
Also, why is it always generating a complementary "NOT... IS NULL" statement? This also concerns me about performance.
Thank you!
Here is the code:
Code:
AdvancedCriteria criteria = new AdvancedCriteria( OperatorId.AND, new Criterion[] { new Criterion("clientVehicleOwnerId", OperatorId.EQUALS, data.getClient().getId()), new Criterion("vehicleId", OperatorId.EQUALS, firstVehicleId) ,new Criterion("permission", OperatorId.IN_SET, data.getPermissions()) //permission array });
Code:
"SELECT COUNT(HISTORY_ID) FROM HISTORY_ENTRY WHERE (((((CLIE_SQ_CLIENT = ?) AND NOT ((CLIE_SQ_CLIENT IS NULL))) AND (VEHI_SQ_VEHICLE = ?)) AND NOT ((VEHI_SQ_VEHICLE IS NULL))) AND (((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((PERM_SQ_PERMISSION_HANDLE = ?) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) OR (PERM_SQ_PERMISSION_HANDLE = ?)) AND NOT ((PERM_SQ_PERMISSION_HANDLE IS NULL))))")
Comment