可能不是最具描述性的标题,但有时候很难将愚蠢的SQL问题(那种让您想把咖啡中的酒精化为一天)变成英文的问题。我主要有以下两个表:如何在SQL中添加虚拟值
TABLE1
studentid firstname lastname counter cmid score lessond
328000 Jacob GG 5 189 90 103950
328111 Jacob GG 6 189 80 103951
3283333 Tyler GR 5 189 70 103950
3244444 William FL 5 189 70 103950
3280000 Sean DA 5 189 80 103950
3283333 Sean DA 6 189 90 103951
表2
Lesson2ClassroomAssignmentId Counter
103956 1
103947 2
103948 3
103949 4
103950 5
103951 6
第一张表基本上是学生名单和编号的某些教训分数( 1-6并用计数器表示)。第二张表是所有可能课程的列表(编号为1-6,由计数器表示)。
我需要做的是为每个学生和每个课程获取一张表格,无论该学生是否在表格1中为该课程设置了一行。
我试着做一些事情,如从表1中选择*并将第二张表的结果UNIONING与第一张表的结果联系起来,其中计数器<>计数器但未能得到我想要的结果。
如果有人有任何建议(不需要完整的答案,只需指出正确的方向)我欠你一个!另外,随意取笑我,如果这个职位是unintelligable因为它几乎对我来说很有意义,我谁也它一直盯着过去6小时一个;)
的Ciao Ciao的,
添
期望的输出:
所需的输出将是:
表FINAL
studentid firstname lastname counter cmid score lessond
3280000 Jacob GG 1 NULL, NULL, NULL
3280000 Jacob GG 2 NULL, NULL, NULL
3280000 Jacob GG 3 NULL, NULL, NULL
3280000 Jacob GG 4 NULL, NULL, NULL
3280000 Jacob GG 5 189, 90, 103950
3280000 Jacob GG 6 189, 80, 103951
3283333 Tyler GR 1, NULL, NULL, NULL
3283333 Tyler GR 2, NULL, NULL, NULL
3283333 Tyler GR 3, NULL, NULL, NULL
3283333 Tyler GR 4, NULL, NULL, NULL
3283333 Tyler GR 5, 189, 70, 103950
3283333 Tyler GR 6, NULL, NULL, NULL
因此,基本上从表一中抽取任何一行学生的实际课文数据,并为每个课程(表2)中没有得分数据的虚拟行补充该学生没有得分。
能你向我们展示所需的输出? – 2011-06-01 20:59:10