Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

MYSQL Abfrage für Verknüpfungstabelle

Frage Entwicklung Datenbanken

Mitglied: 61200

61200 (Level 1)

09.02.2008, aktualisiert 18:02 Uhr, 9004 Aufrufe, 4 Kommentare

Hallo ;), ich finde eure Page oft via Google und hab schon so einige Infos daraus gewonnen, nun bin ich aber auf ein Problem gestoßen.

Ich habe mehrere Tabellen in meiner DB "userdb" eine user, eine sprachen, und eine zu_sprachen Table.


In der user gibt es u.a. eine user_id (PK AI)
In der Sprachen Tabelle gibt es Sprach_id(PK AI) und sprache
In der zu_sprachen Tabelle werden user_id und Sprach_id verknüpft.


Ich hätte nun gerne eine Ausgabe von User_id und dessen gewählten sprachen


nochmal kurz

user(user_id, uva)
sprachen(sprach_id, sprache)
zu_sprachen(sprach_id, user_id)

Ich hab mit inner join und mehreren Selects probiert komme aber einfach nicht zum Ziel, auch habe ich versucht nach mehreren Ansätzen eurere Page zu handeln leider ohne Erfolg.
Ich danke ;).
Mitglied: utopia
09.02.2008 um 08:44 Uhr
SELECT user_id, sz.sprache
FROM zu_sprache AS sz
INNER JOIN sprachen AS s
ON sz.sprach_id = s.sprach_id;

bzw

SELECT user_id, sz.sprache
FROM user AS u
INNER JOIN (zu_sprache AS sz
INNER JOIN sprachen AS s
ON sz.sprach_id = s.sprach_id)
ON u.user_id = sz.user_id;

Bei der Klammersetzung unbedingt mal googlen, die vergess ich immer ;)
Bitte warten ..
Mitglied: 61200
09.02.2008 um 08:52 Uhr
danke schonmal für die frühe hilfe ;)

er meckert wegen dem sz.....

irgendwas passt noch nicht

user
user_id

sprachen
sprach_id sprache

zu_sprachen
sprach_id user_id

so sehen meine tables aus
wofür ist "sz"?
Bitte warten ..
Mitglied: misterdemeanor
09.02.2008 um 13:09 Uhr
Mahlzeit,

er meckert wegen dem sz.....

irgendwas passt noch nicht

wofür ist "sz"?

sz soll hier ein Tabellenverweis/Alias darstellen (-->AS)

Allerdings meine ich das es nicht zulässig ist dieses in einem JOIN zu verwenden.

bin mit dem MySQL-Dialekt auch nicht ganz vertraut...aber ungefähr so sollte es aussehen:

01.
SELECT user.user_id, sprachen.sprache 
02.
FROM [user]  
03.
INNER JOIN (sprachen INNER JOIN zu_sprachen ON sprachen.sprach_id = zu_sprachen.sprach_id) ON user.user_id = zu_sprachen.user_id 
04.
WHERE (((user.user_id)=1));
WHERE-Klausel ist jetzt nur beispielhaft mit drin.

BG; Felix -misterdemeanor<
Bitte warten ..
Mitglied: 61200
09.02.2008 um 18:02 Uhr
Danke ihr seit mal echt eine große Hilfe ;).

So hat es letztlich geklappt

"SELECT user.user_id, sprachen.sprache
FROM user
INNER JOIN (sprachen INNER JOIN zu_sprachen ON sprachen.sprach_id = zu_sprachen.sprach_id) ON user.user_id = zu_sprachen.user_id where user.user_id="X";"

Wofür bei dir die vielen Klammern sind hab ich nicht ganz verstanden, jedenfalls klappte es nachdem ich diese entfernt habe.

ausgabe ist dann

user_id deutsch
user_id spanisch
user_id englisch

*freut*
Bitte warten ..
Ähnliche Inhalte
Datenbanken
gelöst MySQL Abfrage für demographische Zwecke (3)

Frage von morphil zum Thema Datenbanken ...

Datenbanken
gelöst MYSQL Abfrage Werte summieren (3)

Frage von Ghost108 zum Thema Datenbanken ...

Datenbanken
gelöst MySQL Abfrage um JOIN erweitern (14)

Frage von datadexx zum Thema Datenbanken ...

Windows Server
GPO - UAC: "Als Administrator ausführen" soll Abfrage bringen (4)

Frage von MissJones zum Thema Windows Server ...

Neue Wissensbeiträge
Windows 10

Windows 8.x oder 10 Lizenz-Key aus dem ROM auslesen mit Linux

Tipp von Lochkartenstanzer zum Thema Windows 10 ...

Tipps & Tricks

Wie Hackt man sich am besten in ein Computernetzwerk ein

(38)

Erfahrungsbericht von Herbrich19 zum Thema Tipps & Tricks ...

Heiß diskutierte Inhalte
Festplatten, SSD, Raid
POS Hardware und alternativen zu Raid 1? (21)

Frage von Brotkasten zum Thema Festplatten, SSD, Raid ...

Viren und Trojaner
Verschlüsselungstrojaner simulieren (18)

Frage von AlbertMinrich zum Thema Viren und Trojaner ...

Server-Hardware
gelöst Empfehlung KVM over IP Switch (8)

Frage von Androxin zum Thema Server-Hardware ...

Ubuntu
Nextcloud 12 Antivirus App for Files (8)

Frage von horstvogel zum Thema Ubuntu ...