我有以下查询:
return dateTimes.OrderBy(dateTime => dateTime).FirstOrDefault(dateTime => dateTime.Date > DateTime.Today && dateTime.TimeOfDay > DateTime.Today.TimeOfDay);
此查询将返回SUM的结果,例如145。 但如果我改变总和的别名变为“testing”或“test1234567890”,它将返回一个不同的值,高于或低于145.
我想知道是否有人可以解释我这件事。需要解决方案!
非常感谢
答案 0 :(得分:3)
如果您可以共享您的数据集,则更容易验证此... 但只是阅读你的代码:
你的问题似乎在这里:
LEAD(p_type, 1) OVER
(PARTITION BY u_id ORDER BY u_id) AS post_p
当您按相同属性进行分区并按顺序排序时,每个分区中记录的顺序可能不一致。因此,每次运行查询时,LEAD()可能会返回不同的结果。
似乎改变别名的原因可能与缓存结果的返回有关。