关系代数中的选择运算用于从关系中选取满足特定条件的元组。例如,要查询所有选修过课程的学生学号,可以使用选择运算筛选出 SC 关系中所有非空的 Sno 属性值。

在某些情况下,查询结果可能包含重复的元组。例如,如果一个学生选修了多门课程,那么在查询所有选修过课程的学生学号时,该学生的学号就会出现多次。为了消除重复行,可以使用 DISTINCT 关键字。

以下示例展示了如何使用 SQL 语句查询所有选修过课程的学生学号,并消除重复结果:

SELECT DISTINCT Sno 
FROM SC;

关系 SC:

| Sno | Cno | Grade |

| ----- | --- | ----- |

| 07001 | 1 | 92 |

| 07001 | 2 | 85 |

| 07001 | 3 | 88 |

| 07002 | 2 | 80 |

| 07002 | 3 | 80 |

查询结果:

| Sno |

| ----- |

| 07001 |

| 07002 |