我有一个名为values的表,如下所示:
+-------+------------+-----------+----------+
|Id |DateTime |SensorId |Value |
+-------+------------+-----------+----------+
Run Code Online (Sandbox Code Playgroud)
SensorId是传感器详细信息表的外键.此值表中将有10m +记录.
我可以运行此sql命令返回每个SensorId的最新记录,并在大约0.3秒内运行.
SELECT a.*
FROM Values as a
INNER JOIN (
SELECT SensorId, MAX(ID) maxId
FROM Values
GROUP BY SensorId
) b ON a.SensorId = b.SensorId
AND a.Id = b.maxId
ORDER BY a.SensorId ASC
Run Code Online (Sandbox Code Playgroud)
如何在保持(或改进)性能的同时,在ac#应用程序中使用实体框架实现相同的输出?