2017-10-16 1 views
-1

Abfrage nicht produzieren ein Ergebnis das Aufstellen von:Ich kann keine Daten aus meiner Datenbank sehen. Ich habe versucht, Daten innerhalb der Mitteilungs Tabelle

SELECT AnnouncementID, 
Announcement, Date_Posted, Employee.EmployeeID , 
Employee.AccessLevel 
FROM Announcement 
INNER JOIN Employee on Announcement.AnnouncementID = Employee.EmployeeID; 

EmployeeTable

Announcement Data

+0

Wird diese Abfrage ohne Fehler ausgeführt? Wie sind deine Tische? –

+0

Diese Abfrage läuft, aber es gibt keine Daten, wenn ich es ausführe. –

+0

Haben Sie Beispiele für Ihre Tabellen und Daten? Was passiert, wenn Sie * aus der Ankündigung auswählen oder * aus dem Mitarbeiter auswählen –

Antwort

0

Beim gegenwärtigen Moment ohne Ihre Mitarbeiter Tabelle zu sehen, wenn Sie diese Abfrage verwenden sollte zurückkehren ein Ergebnis

SELECT AnnouncementID, 
    Announcement, Date_Posted, Employee.EmployeeID , 
    Employee.AccessLevel 
    FROM Announcement 
    LEFT JOIN Employee on Announcement.AnnouncementID = Employee.EmployeeID; 

Sie brauchen etwas entlang der Linien dieser

ALTER TABLE Employee 
ADD EmployeeFK int; 


ALTER TABLE Employee 
ADD FOREIGN KEY (EmployeeFK) REFERENCES Announcement(AnnouncementId); 

Hier ist ein sehr einfaches Beispiel, was Sie brauchen, aber ich rate Ihnen auf Fremdschlüssel zu lesen, benötigen.

http://sqlfiddle.com/#!9/261e20/1

Die announcementFK ist ein Fremdschlüssel in der Tabelle employee, die auf die announcementid in der Ankündigung Tabelle verknüpft ist. Sie können dann diesen Werten beitreten.

z.B. Der Wert ist 1 in der Ankündigungstabelle und der Wert ist 1 in der Tabelle employee, daher werden diese Übereinstimmungen und ein Ergebnis zurückgegeben. Es tut mir leid, aber es ist schwer über das Internet zu erklären ...

+0

[3]: https://i.stack.imgur.com/yI9jh.png [4]: ​​https : //i.stack.imgur.com/0nref.png [5]: https://i.stack.imgur.com/9dHbl.png Ich habe versucht, die Abfrage und das sind die Ergebnisse. Ich möchte die Daten für Zugriffsebene sehen, aber ich kann es nicht bekommen –

+0

Ok, verstehe ich jetzt. Der Grund, warum Ihre innere Join-Abfrage nicht funktioniert, liegt darin, dass Sie in Ihrer Mitarbeitertabelle keinen Fremdschlüssel haben. Sie müssen der Tabelle employee einen Fremdschlüssel hinzufügen, der auf die Ankündigungs-ID in der Ankündigungstabelle verweist. Sobald Sie dies getan haben, können Sie sie dann verbinden und Sie erhalten das gewünschte Ergebnis –

+0

Ich habe meine Abfrage erneut versucht, aber ich werde nicht funktionieren. –

Verwandte Themen