mybatis+mysql 關於兩個張表有相同屬性名查詢報錯的原因Column 'id' in order clause is ambiguous

mybatis+mysql 關於兩個張表有相同屬性名查詢會報錯的

注意,在MYSQL Wordbench中查詢時是可以通過的。

在mybatis中查詢兩張表中有相同屬性名會報錯

t_class表                                                t_teacher表

        

兩張表的id屬性名相同,當我執行下面的查詢語句的時候,會報錯 => Column 'id' in order clause is ambiguous,

<select id="findGradeClassByDescribe" parameterType="Integer" resultMap="gradeClassResult">
    select * from t_class t1,t_teacher t2 WHERE t1.describe=#{describe} and t2.id=t1.teacher
</select>

 

正確情況下,

1)把表的屬性其中一個改了

t_class表                                                       t_teacher表

              

2)在select語句中寫別名

利用as爲查詢的列起別名

例如

<select id="findGradeClassByDescribe" parameterType="Integer" resultMap="gradeClassResult">

    select t_class.id class_no, teacher, count, describe,t_teacher.id,password from t_class t1,t_teacher t2 WHERE t1.describe=#{describe} and t2.id=t1.teacher

</select>

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章