我认为这很容易,但我尝试的所有方法都没有给出预期的结果。
当我尝试运行此查询时:(在更大的表上)
SELECT Id, Code, newCode, Course, Internship
FROM courses
WHERE Year ='c' AND (Internship ='IS' OR Internship = '')
ORDER BY newCode ASC
我得到这个结果:
id code newCode course
----------------------------
1 30002 3000231 aaaa-1
2 30002 3000232 aaaa-2
3 30002 300021 aaaa-a1
4 30002 300022 aaaa-a2
5 30009 300093 bbbb-1
6 30009 300093 bbbb-2
7 30012 3001231 cccc-1
8 30012 3001232 cccc-2
9 30012 300121 cccc-a1
10 30012 300122 cccc-a2
11 30012 300123 cccc-a3
12 30013 3001331 dddd-1
假设我想要某种 sql 查询,它会给我只包含课程名称的表,(每个新课程都是列中的一个新值 - 代码),例如我想要得到的:(第一个每门课程都很好)
id code newCode course
----------------------------
1 30002 3000231 aaaa-1
5 30009 300093 bbbb-1
7 30012 3001231 cccc-1
12 30013 3001331 dddd-1
我怎么做?我试过了:
SELECT Id, Distinct Code, newCode, Course, Internship
FROM courses
WHERE Year ='c' AND (Internship ='IS' OR Internship = '')
ORDER BY newCode ASC
为什么它不起作用,没有它起作用的“独特”,有了它,它就会失败。
此外,下一个问题不太重要,但仍然......有没有办法让我只获得课程本身的名称,例如:“aaaa”而不是“aaaa-a1”,考虑到名称不必相同像这里这样的模式,但我知道“-”之后的可能性是什么(比如“-a1”或“-a2”)