Cathy-Chen258 发表于 2020-12-5 00:25:04

关于MySQL中学生成绩表及格不及格设置

本帖最后由 Cathy-Chen258 于 2020-12-5 00:34 编辑

各位热心网友们,想请问下我所设置的条件如何能像下面那个select*from tb_grade那样出现在rank上,我写的条件语句运行出来不是一张表的样子,意思是我设置好条件后再select    grade表中rank是空的(我那个grade表的rank内容是直接插入的T_T)


感谢各位热心网友的帮助与耐心,谢谢你们^_^

kogawananari 发表于 2020-12-5 05:21:57

select   a.*, a.rank
from(select xx case when ...) a
join xxx b on b.x = a.x
where a.rank = '不及格'

(mssql的子查询语法, 将一个不含分组和排序的语句的查询结果当成一个表,mysql不清楚能不能这样)

wp231957 发表于 2020-12-5 08:34:57

你总共有几个表发出一部分数据说出想实现啥

Cathy-Chen258 发表于 2020-12-5 11:04:45

kogawananari 发表于 2020-12-5 05:21
select   a.*, a.rank
from(select xx case when ...) a
join xxx b on b.x = a.x


这个join后面是加入什么 xxx

Cathy-Chen258 发表于 2020-12-5 11:16:01

本帖最后由 Cathy-Chen258 于 2020-12-5 11:17 编辑




以上上三个表的信息,grade是子表,其他两个是主表(连了外键)

我设定了条件语句显示在rank上(用case when then设定条件),可是我运行后再查看grade表后rank是空的(用select * from tb_grade查看表)

kogawananari 发表于 2020-12-5 18:05:56

Cathy-Chen258 发表于 2020-12-5 11:04
这个join后面是加入什么 xxx

join不join看需求 可以外面join 也可以在内层join

Cathy-Chen258 发表于 2020-12-5 18:26:13

wp231957 发表于 2020-12-5 08:34
你总共有几个表发出一部分数据说出想实现啥

我知道怎么回事了,我只是想知道有没有可能这样子,不好意思啦啦啦{:5_96:}
页: [1]
查看完整版本: 关于MySQL中学生成绩表及格不及格设置