SQL server 中三个表连接查询的语句这样写对吗?

时间:2021-05-31 11:13:20
use studentInfo

select 学号= a.Student_id,
       姓名=a.Student_name,
       课程名=b.Course_name,
       成绩=c.Grade
       
from student a inner join course b inner join score c
on a.Student_id=c.Student_id
on b.Course_id=c.Course_id

这样写对吗?

10 个解决方案

#1


select a.Student_id as 学号
...
     
from student a inner join course b 
on a.Student_id=c.Student_id
inner join score c
on b.Course_id=c.Course_id

#2



use studentInfo

select 
     a.Student_id as 学号,
     a.Student_name as ,
     b.Course_name as 课程名,
     c.Grade as 成绩  
from 
     student a 
inner join 
     course b 
on  
     a.Student_id=b.Student_id
inner join 
     score c
on 
     a.Course_id=c.Course_id

#3


一个innser join后面要跟一个on。

#4



use studentInfo
go
select 学号= a.Student_id,
  姓名=a.Student_name,
  课程名=b.Course_name,
  成绩=c.Grade   
from student a inner join score c  on a.Student_id=c.Student_id
inner join course b on b.Course_id=c.Course_id
--或者
use studentInfo
go
select 学号= a.Student_id,
  姓名=a.Student_name,
  课程名=b.Course_name,
  成绩=c.Grade   
from student a , score c  , course b 
where on b.Course_id=c.Course_id,a.Student_id=c.Student_id


#5


多了一个on…………

#6


引用 2 楼  的回复:
SQL code

use studentInfo

select 
     a.Student_id as 学号,
     a.Student_name as ,
     b.Course_name as 课程名,
     c.Grade as 成绩  
from 
     student a 
inner join 
     course b 
on  
     a.Stud……

++

#7


use studentInfo

select 学号= a.Student_id,
  姓名=a.Student_name,
  课程名=b.Course_name,
  成绩=c.Grade
    
from student a inner join course b inner join score c
on b.Course_id=c.Course_id
on a.Student_id=c.Student_id

--或者
use studentInfo
go
select 学号= a.Student_id,
  姓名=a.Student_name,
  课程名=b.Course_name,
  成绩=c.Grade   
from student a , score c  , course b 
where on b.Course_id=c.Course_id
AND a.Student_id=c.Student_id

#8


每个join 后面跟on,不能写在一起

#9


a.Student_id AS 学号
a.Student_name AS 姓名
b.Course_name AS 课程名
c.Grade AS 成绩
还有inner join 后面要接ON
(LZ语法要规范哦!)
 

#10


这个要分开写哦,一套是一套   不能两个 inner join 然后两个on

#1


select a.Student_id as 学号
...
     
from student a inner join course b 
on a.Student_id=c.Student_id
inner join score c
on b.Course_id=c.Course_id

#2



use studentInfo

select 
     a.Student_id as 学号,
     a.Student_name as ,
     b.Course_name as 课程名,
     c.Grade as 成绩  
from 
     student a 
inner join 
     course b 
on  
     a.Student_id=b.Student_id
inner join 
     score c
on 
     a.Course_id=c.Course_id

#3


一个innser join后面要跟一个on。

#4



use studentInfo
go
select 学号= a.Student_id,
  姓名=a.Student_name,
  课程名=b.Course_name,
  成绩=c.Grade   
from student a inner join score c  on a.Student_id=c.Student_id
inner join course b on b.Course_id=c.Course_id
--或者
use studentInfo
go
select 学号= a.Student_id,
  姓名=a.Student_name,
  课程名=b.Course_name,
  成绩=c.Grade   
from student a , score c  , course b 
where on b.Course_id=c.Course_id,a.Student_id=c.Student_id


#5


多了一个on…………

#6


引用 2 楼  的回复:
SQL code

use studentInfo

select 
     a.Student_id as 学号,
     a.Student_name as ,
     b.Course_name as 课程名,
     c.Grade as 成绩  
from 
     student a 
inner join 
     course b 
on  
     a.Stud……

++

#7


use studentInfo

select 学号= a.Student_id,
  姓名=a.Student_name,
  课程名=b.Course_name,
  成绩=c.Grade
    
from student a inner join course b inner join score c
on b.Course_id=c.Course_id
on a.Student_id=c.Student_id

--或者
use studentInfo
go
select 学号= a.Student_id,
  姓名=a.Student_name,
  课程名=b.Course_name,
  成绩=c.Grade   
from student a , score c  , course b 
where on b.Course_id=c.Course_id
AND a.Student_id=c.Student_id

#8


每个join 后面跟on,不能写在一起

#9


a.Student_id AS 学号
a.Student_name AS 姓名
b.Course_name AS 课程名
c.Grade AS 成绩
还有inner join 后面要接ON
(LZ语法要规范哦!)
 

#10


这个要分开写哦,一套是一套   不能两个 inner join 然后两个on