Asp.net 使用Sql查询选择状态重复的记录
我有一张像这样的时间表 我希望选择查询数据如下所示: 1和11是重复的培训师和重复的日期、时间 10和12是重复的培训师、重复的vanueid和重复的日期、时间 因此,最后两列是“显示”与“可用”不重复,与“显示不可用”不重复Asp.net 使用Sql查询选择状态重复的记录,asp.net,sql,Asp.net,Sql,我有一张像这样的时间表 我希望选择查询数据如下所示: 1和11是重复的培训师和重复的日期、时间 10和12是重复的培训师、重复的vanueid和重复的日期、时间 因此,最后两列是“显示”与“可用”不重复,与“显示不可用”不重复 这是我想到的解决方案。可能有一些语法问题,但我给出的逻辑可能会对您有所帮助 DECLARE @duplicate TABLE ( trainerId INT, dt varchar(50) )
这是我想到的解决方案。可能有一些语法问题,但我给出的逻辑可能会对您有所帮助
DECLARE @duplicate TABLE (
trainerId INT,
dt varchar(50)
)
INSERT INTO @duplicate SELECT TrainerId , [Date] from tbl GROUP BY TrainerId , Date HAVING (COUNT(*) > 1)
SELECT * FROM @duplicate
DECLARE @tempTable TABLE (
trainerId INT,
dt varchar(50),
status int
)
INSERT INTO @tempTable
SELECT trainerId , [Date] , STATUS = (SELECT COUNT(*) FROM @duplicate where trainerId = tbl.TrainerId and dt = tbl.Date) FROM tbl
![enter image description here][2]SELECT * , CASE [status] WHEN 0 THEN 'Available' ELSE 'Not Available' END FROM @tempTable
谢谢你,德维什,但我没有得到。如果可能的话,给我一个完美的查询。@Ketanmevada我已经输入了工作代码,还添加了示例数据和查询输出。你需要调整到你的列名和其他内容。你能给我一个关于时间的查询吗,比如培训师不在同一时间意味着示例是:如果在这个示例中,记录1和11是相同的日期和相同的培训师,但如果时间与他在同一时间不同