SQL查询语句求助 - MS-SQL Server / 疑难问题
现在有这么一张表(或者view):
EID(key) OID Value
------------------------------
E1 O1 4
E2 O2 16
E3 O1 5
E4 O2 8
E5 O1 3
E6 O3 9
现在要构造一个SQL查询完成以下任务:
1. 给定一个EID的集合,选出EID在集合中的记录。 例如给定集合('E1', 'E2', 'E4'), 则选出以下记录:
EID(key) OID Value
------------------------------
E1 O1 4
E2 O2 16
E4 O2 8
2. 对于上一步中选出的记录按照OID分组,并从没组中选出value最小的记录。对于上例来说,就是选出如下记录:
EID(key) OID Value
------------------------------
E1 O1 4
E4 O2 8
求一个SQL查询语句能够完成上述2步的工作,给定参数集合('E1', 'E2', 'E4'),查询能够直接返回第2步的结果。
SQL code:
select * from tb t where not exists(select 1 from tb where OID=t.OID and value<t.value)
and eid in('E1', 'E2', 'E4')
SQL code:
--> 测
相关问答:
请问
添加新数据源->数据库->添加连接
这个界面下,数据源选择:Microsoft SQL Server (SqlClient);
服务器名:
应该写什么呢?
有谁知道?多谢各位!!
你到底是要连mysql还是mssql?
引用
请问
......
1。怎样使xp_cmdshell能完整输出超过255个字符的字符串。
2。select 时,检索速度是与from后的 TABLE顺序有关,还是与where条件的顺序有关(TABLE数据多少 )
在系统属性设定里有个选项,可以修改单字段输出字数限制. ......
我想查询出每天数据的最大的一个值。表的格式如下
表名: hisdata
字段 编号 值 状态 时间
Id value state dattime
101 32.3 0 ......
运行后报错误如下:
错误类型:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC Microsoft Access Driver] 语法错误 (操作符丢失) 在查询表达式 '数学 + 4where 姓名='王静'' 中。
......