求一条SQL命令的优化
SQL code:
SELECT cCardNo, MAX(dtime)AS dtime,cDoorId,cReadId,cStatus
from Attend_Record
WHERE cDoorID IN (SELECT distinct cDoorID from Attend_Doorinfo WHERE isApplyWork = 1)
GROUP BY cCardNo,cDoorId,cReadId,cStatus
输出结果:
卡号 时间 门 进出 状态
18625006 2010-01-20 08:15:28.000 M0001-1 2 通过
18624907 2010-01-19 18:13:43.000 M0002-1 2 通过
18625119 2010-01-20 08:04:22.000 M0002-1 1 通过
05520234 2010-01-08 18:50:49.000 M0001-1 1 通过
18618170 2009-10-18 07:56:38.000 M0001-1 2 未通过
18564167 2010-01-19 18:16:02.000 M0002-1 2 通过
18609273 2010-01-20 08:05:10.000 M0002-1 1 通过
18619763 2010-01-19 14:07:44.000 M0001-1 2 通过
18602260 2009-09-28 12:36:18.000 M0001-1 2 未通过
18624356 2010-01-19 10:49:51.000 M0002-1 1 通过
如果库内的记录里,同一张卡,在同一个门刷了进出二次的话,这条命令查出来的是二条记录
而我想要的记录结果是,一张卡在一个门内只查寻最后一条记录,无论是进还是出
求优化
SQL code:
SELECT cCardNo, MAX(dtime)AS dtime,cDoorId,cReadId,cStatus
from Attend_Record as a
WHERE exists(SELECT cDoorID from Attend_Doorinfo WHERE isApplyW
相关问答:
我要做一个定点事件,是每天晚上12点就把三个表里的信息放入一个表里,我想用存储过程来写,怎么写呢?,那位高手帮帮忙吧,非常感谢!
用户名是唯一的
表A 字段
用户名:Name ,邮箱:Ema ......
场景如下:
客户把备份好的数据库,发给我,我在本机还原后,运行写好的存储过程,比较快,并且在实施那边运行同样比较快。但是当实施在客户那边运行的时候速度就非常的慢,时间超出了程序的时间限制。远程在客户那 ......
<table style="width: 1000px"><tr>
<td style="height: 38px; width: 35px;">
姓名</td>
......
我们C#做一个窗体 往数据库里插入数据
SqlConnection cn = new SqlConnection("Data Source=20090713-1752\\SQLEXPRESS;Initial Catalog=goods;Integrated Security=True");
......