【数据库】MySQL合并同一个表中的同类型字段到同一列

最近在做考研相关的项目,中途遇到一个sql查询的问题表scope是一个关于考研科目的表,其中包含了考研政治,考研英语,考研数学以及考研专业科这些字段,学校+专业决定考研科目,我要查询得到某个学校某个专业要考哪些科目,就想把这几个字段合并为一列。比如:

学校 专业 政治 外语 专业科一 专业科二
学校A 专业A 思想政治理论 英语一 西方哲学史一 马克思主义哲学
学校A 专业A 思想政治理论 俄语 西方哲学史一 马克思主义哲学
学校A 专业A 思想政治理论 日语 西方哲学史一 马克思主义哲学
学校A 专业A 思想政治理论 德语 西方哲学史一 马克思主义哲学

要得到同一个学校并且同一个专业的所有考试科目,在参考了http://bbs.csdn.net/topics/390410010值 后知道了怎么处理,具体写法是(PS:这里只列出合并两个字段的sql语句,另外实际项目中字段用不带中文)

SELECT 政治 as 科目 FROM scope
WHERE 学校= '学校A' AND 专业= '专业B'
UNION
SELECT 英语 as 科目 FROM scope
WHERE 学校= '学校A' AND 专业= '专业B'

可以得到结果

科目
思想政治理论
英语一
俄语
日语
德语

你可能感兴趣的:(SQL)