0
我卡住了,有人给我推一下。转换SQL查询/子查询LINQ(VB)
这里是我的SQL查询..
SELECT EqID, MakeID, Model, Description,
(SELECT MAX(EvDateEnd) AS MaxOfDateEnd
FROM tblEvent WHERE (EqID = tblEquip.EqID) AND (Event = 'REG')) AS RegExpire,
(SELECT Entity FROM tblEvent AS tblEvent_3 WHERE (EqID = tblEquip.EqID) AND(Event = N'EAE') AND (EvDateEnd IS NULL)) AS IssuedTo
FROM tblEquip
我为什么这样做,如果有更好的办法,我所有的耳朵。
tblEquip列出设备行,EqID是PK tblEvent列出了涉及到设备的许多活动,EqID是FK
例如,我想从事件表获得最大EvDateEnd每个记录在tblEquip中,但并非tblEquip中的所有记录都有“REG”事件,而其他记录有多个REG事件。
某些事件(如EAE)我将tblEvent.EvDateEnd字段留空以显示事件是开放和正在进行的,例如向员工(实体)发放车辆。当车辆返回时,我在EvDateEnd中输入日期,基本上关闭事件。