请问我这里哪里错了?

img


select 姓名,性别,datepart(dw,出生日期) as 出生周
from 学生表,成绩表
where 成绩表.成绩>95
我这个哪里错了?它把全部都查询了一次
第2题

select a.姓名,a.性别,dayname(a.出生日期) 星期几出生
 from 学生表 a
  join 成绩表 b
   on a.sno=b.sno 
  where b.成绩>95

我大概看了以下,T-SQL语句和MySql语句好像差不多,这种联结查询语句应该是下面的格式,xx代表字段,按需修改
select a.xx,a.xxx,b.xxxx from tableA as a left outer join tableB as b on a.xx = b.xx where a.xxx>95

如果TSQL和Mysql差不多的话,你这种查询方式是笛卡尔积的,可以使用join连接使用两个表的关联字段进行关联

select 学生表.姓名,学生表.性别,学生表.datepart(dw,出生日期) as 出生周
from 学生表
join on 成绩表.关联字段 = 学生表.关联字段
where 成绩表.成绩>95