2011-01-11 9 views
0

Was ich hier tun möchte, ist einfach ... Anzeige einer ivestigators ID und ihm entsprechenden Namen ... Dies kann leicht aus der Benutzer-Tabelle durch Auswahl basierend auf dem Benutzertyp erfolgen. Allerdings möchte ich nur einige Arten von Ermittlern auswählen. Die Analogie hier ist, Ermittler sind ein Exponat für sie zu untersuchen zugeordnet. Ein Ermittler kann nur maximal 3 Fällen zugeordnet werden. Jetzt, während der Zuweisung der Ermittler, möchte ich eine Select-Anweisung schreiben, die nur InvestigatorIDs abrufen würde, die weniger als oder gleich 2 Fällen zugewiesen wurden. Ich habe Ausstellung und Benutzer Tabelle, die Beispieldaten unten zeigt, enthalten. alt textVerschachtelte und komplizierte Select-Anweisung

alt text

Jetzt habe ich irgendwie eine Vorstellung, die ich von allen haben, zuerst von der Benutzerliste durch ihre ID alle Ermittler herausgreifen und dann filtern sie durch die Ausstellung Tabelle mit denen zugewiesen fallen zu 3 Fällen und verlassen nur diejenigen mit zwei Fällen. Danach benutze ich diese IDs, um den Namen des Forschers auszuwählen.

die große Frage ist, wie schreibe ich die Aussage ??

+1

Warum haben Sie dies mit dem C# -Tag markiert? Suchen Sie nach einer SQL-Anweisung, um dies zu tun, oder etwas in C#, z. eine LINQ-Anweisung? –

+0

Mir fällt es schwer, die Fremdschlüsselbeziehung hier zu sehen, ist es "OfficerID" oder "InvestigatorID", die sich dem Benutzertisch anschliesst? –

+0

InvestigatorID ist die einzige Übereinstimmung mit einem Eintrag in der unteren Tabelle. (IO123). – sisve

Antwort

0
SELECT InvestigatorID From Cases GROUP BY (InvestigatorId) HAVING COUNT(INvestigatorId) < 3 

Ist es das wonach Sie suchen?

+0

Splendid .... tut mir leid, Steve, wenn meine Frage mehrdeutig war ... und zu AdamRalph verwende ich die Aussage in einer C# -Anwendung, weshalb ich auch C# und Simon .. thanks für die Klarstellung ... und Chris ..danke für die Antwort .... ich habe es noch nicht ausprobiert, obwohl ich sehen kann, dass es den Job sauber macht ... – Selase