2017-05-28 4 views
0

ich den Fehler ERROR 1066 (42000) erhalten: Nicht eindeutige Tabelle/Alias: 'STUDENT_TBL'Nicht eindeutige Tabelle/Alias ​​(42000)

select STUDENT,DATE,MARK from Assessments inner join STUDENT_TBL onAssessments,ID_STUDENT=STUDENT_TBL,STD_ID inner joinVisit_log,ID_STUDENT=STUDENT_TBL,STD_ID where STUDENT_TBL,STD_IDIN (select ID_STUDENT FROM Assessments group by ID_STUDENT having avg(MARK)>3.7);

Wie es zu beheben?

Antwort

0

trennen müssen Sie '.' statt ',' verwenden sollten Table_Name.column_name zuzugreifen.

select STUDENT,DATE,MARK 
from Assessments AS Assessments 
inner join STUDENT_TBL AS STUDENT_TBL on Assessments.ID_STUDENT=STUDENT_TBL.STD_ID 
inner join Visit_log AS Visit_log on Visit_log.ID_STUDENT=STUDENT_TBL.STD_ID 
where STUDENT_TBL.STD_ID IN (select ID_STUDENT FROM Assessments 
          group by ID_STUDENT having avg(MARK)>3.7 

auch verwenden alias wie Assessments.ID_STUDENT während Spalten in select-Klausel der Auswahl, wenn die Anwesenden sind in mehr als eine Tabelle

+0

Jetzt habe ich einen Fehler wie: FEHLER 1052 (23000): Spalte 'DATE' in Feldliste ist mehrdeutig –

+0

@ArtemMatrosov Von welcher Tabelle beziehen Sie 'DATE'? – Rohan

+0

Von "Assessments" Tabelle –

0

Wenn Sie Schema und Tabellenname Sie es mit Punkt wie diesem

select STUDENT, Assessments .`DATE`,MARK from Assessments 
inner join STUDENT_TBL on Assessments.ID_STUDENT=STUDENT_TBL.STD_ID 
inner join Visit_log.ID_STUDENT=STUDENT_TBL.STD_ID 
where STUDENT_TBL.STD_ID IN (select ID_STUDENT FROM Assessments group by ID_STUDENT having avg(MARK)>3.7); 
+0

Jetzt habe ich einen Fehler wie: ERROR 1052 (23000): Spalte ‚Datum‘ in Feldliste ist mehrdeutig –

+0

ich habe hinzufügen in meiner Antwort –

Verwandte Themen