【发布时间】:2023-04-03 03:00:01
【问题描述】:
我有一个名为 Student 的表,其中包含以下列:
First name
Last name
Class ID
Class
我想为学生创建一个 ID,我尝试使用 Row_number Over Partiton,但我似乎没有得到想要的东西,但更多的是自行重置,这是我想要得到的结果。
First Last Class ClasID ID (outcome looking for)
------------------------------------
John Brown Math M21 ID01
John Brown English E31 ID01
Tom Bank Math M21 ID02
John Brown Gym G41 ID01
Tim Brown English E31 ID03
【问题讨论】:
-
首先不应该将该表称为
Student。应该有三个表:Student(每个学生一行,每个学生的个人数据,包括一个student_id),Class(每个班级一行,每个班级的特征,包括一个class_id) ,还有一张像你说明的那样的表格,可能称为Student_Class,仅列出(student_id, class_id)的对,以显示每个学生注册的课程。所以,问题:这是你想出的吗?这是你班上的作业吗? -
如果是作业,我会告诉老师这不是一个好的数据模型,不应该鼓励我们学习糟糕的数据模型。如果这是您想出的,您可能需要重新考虑您的方法。
标签: sql oracle window-functions