如何组合相同数据的记录?

时间:2013-03-19 06:31:05

标签: sql sql-server

我必须在students

的基础上从数据库中选择status

状态可以是activeInactive,可能有一些学生的状态为active,有些学生的状态为Inactive

我必须一次选择具有相同身份的学生。

可以通过非常简单的查询来完成,但问题是automaticallyrun time生成了此查询,我无法提供硬编码状态。

如何一次检索same status的记录?

编辑:对于实例,db

中有这些记录

学生A:身份无效

学生B:身份无效

学生C:状态有效

学生D:身份无效

现在我需要在单个结果集中检索学生A,B和D,因为他们具有相同的状态,即“非活动”,同时需要在单独的结果集中检索学生D,因为它具有不同的状态,即“活动”。 / p>

希望现在的情况很明确。

3 个答案:

答案 0 :(得分:0)

如果您的“系统”自动更改查询,那么您完全没有运气。除了更改系统以允许您更改查询之外,您无能为力。 但如果可以,只需使用OR语句即可 即

选择studentid,studentname,status 其中status ='value1'OR status ='value2'

或更简单......

选择studentid,studentname,status 其中的状态为('value1','value2')

简单。

答案 1 :(得分:0)

如果你需要两个记录集,请使用两个查询,否则简单使用排序:

ORDER BY状态,名称

答案 2 :(得分:0)

然后尝试这个......

选择studentid,studentname,status where(status ='value1'AND status<>'value2')或者                                             (status<>'value1'AND status ='value2')