MichaK Geschrieben 27. März 2003 Teilen Geschrieben 27. März 2003 Ich möchte eine Sql abfrage erstellen die folgendes ergabniss liefert: [Firma] - [Telefon] Firma1 - 01254752469; 1684168181; 18164648641; 18188183 Firma2 - 1354848;4848484;483463; 434348438 Die tabellen in MS Access sehen dazu wie folgt aus: [Firma] Firma_id Firma_name Firma_strasse [Ansprechpartner] Ansprechpartner_id Ansprechpartner_name Ansprechpartner_telefon Zu jeder Firma gehören mehrere Ansprechpartner, wie sieht eine SQl abfrage aus welche alle telefonnummer zu einer Firma in einem Feld anzeigt? MfG Michael Klaus Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
gugelhupf Geschrieben 27. März 2003 Teilen Geschrieben 27. März 2003 Originally posted by MichaK [Firma] Firma_id Firma_name Firma_strasse [Ansprechpartner] Ansprechpartner_id Ansprechpartner_name Ansprechpartner_telefon Zu jeder Firma gehören mehrere Ansprechpartner, wie sieht eine SQl abfrage aus welche alle telefonnummer zu einer Firma in einem Feld anzeigt? MfG Michael Klaus Wie kannst Du denn herauslesen welche Ansprechpartner zu welcher Firma gehören ? Welche Beziehung besteht zwischen den Tabellen ? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
MichaK Geschrieben 27. März 2003 Autor Teilen Geschrieben 27. März 2003 hab da wohl was vergessen [Firma] Firma_id Firma_name Firma_strasse [Ansprechpartner] Ansprechpartner_id Firma_id Ansprechpartner_name Ansprechpartner_telefon MfG Michael Klaus Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
korea1 Geschrieben 27. März 2003 Teilen Geschrieben 27. März 2003 hi, ich denke das müsste funktionieren: SELECT a.Ansprechpartner_telefon FROM Ansprechpartner a,Firma f WHERE a.Firma_id = f.Firma_id korea1 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
MichaK Geschrieben 27. März 2003 Autor Teilen Geschrieben 27. März 2003 Als Ergebniss erhalte ich alle telefonnummern untereinander aufgelistet. Als Ergebniss sollten aber alle Telefonnummern die zu einer ID gehören in einem Feld stehen. eine Idee??? MfG Michael Klaus Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
korea1 Geschrieben 27. März 2003 Teilen Geschrieben 27. März 2003 was hast du denn für eine datenbank und in welcher sprache programmierst du? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Jaraz Geschrieben 27. März 2003 Teilen Geschrieben 27. März 2003 [x] du willst http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/ lesen. Dann kommt zu den Abfragebedingungen noch ein "and a.Firma_id = x" dazu. Gruß Jaraz Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Der Kleine Geschrieben 27. März 2003 Teilen Geschrieben 27. März 2003 Originally posted by MichaK Als Ergebniss sollten aber alle Telefonnummern die zu einer ID gehören in einem Feld stehen. Das dürfte über SQL kaum möglich sein, ist vielleicht auch nicht immer sinnvoll. Es muß dann folglich eine Funktion geschrieben werden, die alle Datensätze der SQL - Abfrage für die entsprechende Firma abläuft und die Telefonnummern hintereinander zu einem String zusammenfügt. Dieses Feld kann dann nur als reine Informationsquelle dienen, Änderungen sind dort nur schwer zu implementieren. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Jaraz Geschrieben 27. März 2003 Teilen Geschrieben 27. März 2003 Originally posted by MichaK in einem Feld stehen. Ich sollte vielleicht mal richtig lesen. Vergiss also meinen vorherigen Beitrag. Das geht imho nur mit der verarbeitenden Programmiersprache. Gruß Jaraz Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
MichaK Geschrieben 27. März 2003 Autor Teilen Geschrieben 27. März 2003 DAS DABEI ENTSTEHENDE FELD SOLL AUCH NUR ZUR INFO DIEHNEN; ICH WILL DARIN KEINE ÄNDERUNGEN MACHEN. HAT NOCH JEMAND NE IDEE WIE DIESE AUFGABE ZU RELISIEREN IST? MFG MICHAEL KLAUS Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Der Kleine Geschrieben 27. März 2003 Teilen Geschrieben 27. März 2003 [OT]Schrei mich nicht an! Ich bin sensibel und kann dabei nicht denken! [/OT] Die Vorgehensweise ist oben beschrieben. Anders wird es nicht gehen. Falls du dazu Hilfe brauchst, irgendwann später, [OT]wenn du nicht wieder brüllst[/OT]. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
MichaK Geschrieben 27. März 2003 Autor Teilen Geschrieben 27. März 2003 die GROßBUCHSTABEN beziehen sich auf "Alles-Kleinschreiber" ich würde dich niemals anschreien und zum Schluß: Ja bitte bitte ich brauche dazu hilfe MfG Michael Klaus Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
hades Geschrieben 27. März 2003 Teilen Geschrieben 27. März 2003 @MichaK: "Alles-Kleinschreiber" ist ein Benutzerstatus wie jeder andere. Diese sind von der Postingzahl in den fachlichen Foren abhaengig. Siehe Board-FAQ: Artikel 1 und Board-FAQ: Artikel 2. In Foren wird das Schreiben in Grossbuchstaben als Schreien empfunden, egal an wen es gerichtet ist. Zum Problem: Das Problem laesst sich nicht mit einer SQL-Abfrage loesen. Fuer dieses Problem musst Du eine Programmiersprache Deiner Wahl nutzen und das erhaltene Ergebnis der Abfrage weiterverarbeiten. Die Vorgehensweise hat Der Kleine bereits vorgestellt. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Der Kleine Geschrieben 27. März 2003 Teilen Geschrieben 27. März 2003 Hier mal nen Beispiel getestet und Funktioniert unter Access97 beim Klicken auf den Button "Befehl84" : Private Sub Befehl84_Click() Dim db As Database Dim rs_fa As Recordset Dim kt_fa As String Dim rs_ap As Recordset Dim kt_ap As String Dim tel_nummer As String Dim ausgabe As String Set db = CurrentDb() ausgabe = "" kt_fa = "SELECT firma_id, firma_name from firma" Set rs_fa = db.OpenRecordset(kt_fa) rs_fa.MoveFirst While Not rs_fa.EOF kt_ap = "SELECT firma.firma_name, ansprechpartner.ansprechpartner_telefon" kt_ap = kt_ap + " FROM ansprechpartner INNER JOIN firma kt_ap = kt_ap + " ON ansprechpartner.firma_id = firma.firma_id" kt_ap = kt_ap + " Where ansprechpartner.firma_id =" & rs_fa("firma_id") & ";" Set rs_ap = db.OpenRecordset(kt_ap) rs_ap.MoveFirst tel_nummer = "" While Not rs_ap.EOF tel_nummer = tel_nummer & rs_ap("ansprechpartner_telefon") & " " rs_ap.MoveNext Wend ausgabe = ausgabe & rs_fa("firma_name") & " : " & tel_nummer & Chr$(13) rs_fa.MoveNext Wend MsgBox (ausgabe) End Sub PS : Danke @Hades für deine moralische Unterstützung! Edit : Sauber ist es erst, wenn du alles Selbsterstellte auch wieder zerstörst: rs_ap.close rs_fa.close db.close End Sub Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.