>>NOLOCK uses dirty reads. So, if that new record was just added, the select statement may not see it. And it's just a coincidence that one application sees that row and others don't.
>
>No, this is not related. That record exists since a while. Also, the command was retested a day after the record was created and there is still a difference.
The other possibility of having @tax float. Since float is not a precise number, that may explain the problem.
If you exclude @tax condition will you always get the same rows?
BTW, is Tax column float in the database? If yes, it's a bad decision.
If it's not broken, fix it until it is.
My Blog