我试图弄清楚是否可以使用 SQL 生成人工列。
鉴于下面的假数据,您如何创建一个名为GENERATED_SEQUENCE.
规则如下:
- 必须在同一门课程中(Id)
- 必须在同一日期(Course_Date)
- 每个课程会话必须在 30 分钟内(Course_Start_Time 和 Course_End_Time)
代码:
select
111 As Id, 'Bio 101' As Course_Name,
'1/10/2016' AS Course_Date,
'09:00:00' AS Course_Start_Time,
'09:45:00' AS Course_End_Time,
1 AS GENERATED_SEQUENCE
union all
select
111 As Id, 'Bio 101' As Course_Name,
'1/10/2016' AS Course_Date,
'10:00:00' AS Course_Start_Time,
'010:45:00' AS Course_End_Time,
2 AS GENERATED_SEQUENCE
union all
select
111 As Id, 'Bio 101' As Course_Name,
'1/10/2016' AS Course_Date,
'11:05:00' AS Course_Start_Time,
'12:30:00' AS Course_End_Time,
3 AS GENERATED_SEQUENCE
union all
select
431 As Id, 'Econ 101' As Course_Name,
'1/12/2016' AS Course_Date,
'11:00:00' AS Course_Start_Time,
'12:45:00' AS Course_End_Time,
1 AS GENERATED_SEQUENCE
union all
select
111 As Id, 'Bio 101' As Course_Name,
'1/12/2016' AS Course_Date,
'1:00:00' AS Course_Start_Time,
'2:45:00' AS Course_End_Time,
1 AS GENERATED_SEQUENCE
union all
select
543 As Id, 'Eng 200' As Course_Name,
'1/13/2016' AS Course_Date,
'2:00:00' AS Course_Start_Time,
'2:45:00' AS Course_End_Time,
1 AS GENERATED_SEQUENCE
union all
select
543 As Id, 'Eng 200' As Course_Name,
'1/13/2016' AS Course_Date,
'2:55:00' AS Course_Start_Time,
'3:55:00' AS Course_End_Time,
2 AS GENERATED_SEQUENCE
union all
select
543 As Id, 'Eng 200' As Course_Name,
'1/14/2016' AS Course_Date,
'6:00:00' AS Course_Start_Time,
'8:15:00' AS Course_End_Time,
1 AS GENERATED_SEQUENCE
这可能吗?
谢谢!