Java中的SQL语句问题,求解决

有chengji表(Id,Tno,Sno,jiaoxuefenwei,jiaoxuenengli,jiaoxueneirong,zongh)
Teacher表(Tno,Tname)
SQL语句
select Tno,Tname,jiaoxuefenwei,jiaoxuenengli,jiaoxueneirong,zonghe from chengji join Teacher on chengji.Tno=Teacher.Tno where Tname='"+str+"'"
正确吗?
怎么修改

"select b.Tno,b.Tname,a.jiaoxuefenwei,a.jiaoxuenengli,a.jiaoxueneirong,a.zonghe from chengji a join Teacher b on a.Tno=b.Tno where b.Tname='"+str+"'"

看你查询的是以成绩表为主表数据,那么就用左连接,left join,楼上给了正确答案。

    需要用到别名,或者 取那些字段,你需要自定下那个表的字段。 楼上已经给了正确答案

需要重新定义字符
楼上给了正确答案

表名最好用上别名,链接词少个关键字(inner left right..)一楼给了答案

1.sql语句问题,两张表有相同字段需要以别名区分
2.连接方式
3.最好不要直接以字符串连接的方式设置参数值
例如 select t.Tno,t.Tname,c.jiaoxuefenwei,c.jiaoxuenengli,c.jiaoxueneirong,c.zonghe from chengji c left join Teacher t on c.Tno=t.Tno where b.Tname = ?