追加20分!数据库中用sql创建连接多表查询的问题

来源:百度知道 编辑:UC知道 时间:2024/06/22 18:11:52
具体问题是这样:有两张表,学生信息表(主键为学号,char(10)型)和班级信息表(主键为班号,char(8)型)。学号的前8位就是班号。现要在两表间基于学号与班号两属性建立连接查询,连接条件是学号的前八位等于班号。类似于模糊查询,SQL是否能实现这样的连接?具体语句是怎样的?

select *
from 学生信息表 a
join
班级信息表 b
ON
left(a.学号,8)=b.班号

可以的,也可以用mid()命令来取学号的前八位来建立等值查询!例:
select * from 学生信息表,班级信息表 where mid(学生信息表.学号,1,8)=班级信息表.班号
查询结果是列出所有学生信息表与班级信息表中符合条件的记录!

表信息给的不全,实现是肯定能的

如果表之间的关系有了

用substring算出前8位学号再比较就可以了

select 列名
from 学生信息表 inner join 班级信息表
on 学生信息表.(select substring(学号,0,9) from dbo.TABLE1)=班级信息表.班号
你试试看 可以不 我没SQL没办法试验!