Top-Themen

Aktuelle Themen (A bis Z)

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

Frage Entwicklung Datenbanken

GELÖST

Select Statement

Mitglied: pauls1

pauls1 (Level 1) - Jetzt verbinden

12.06.2014 um 15:11 Uhr, 932 Aufrufe, 4 Kommentare

Hallo,

ich bin neu hier im Forum und habe schon gleich folgende Frage.

Und zwar habe zwei Tabellen ('post' und 'post_tag').
In 'post' speichere ich jeglich relevantes zum Post, wie den geschrieben Text..
Zu jedem Post kann man zugleich noch mehrere Tags hinzufügen, wie PhP MySQL...,
welche in 'post_tag' gespeichert werden.
Die beiden Tabellen hängen über die 'post_id' zusammen.


Nun zu meinem Problem.
Bisher habe ich zuerst über Select mir passend zu einem Muster alle Posts von 'post' geholt,
(also ich weiß von vornherein nicht die 'post_id', da sie in Abhängigkeit zur zeit geholt werden)
und danach nach Auswertung des Ergebnisses alle Tags über Select..in() geholt.

Meine konkrete Frage hierbei ist es, kann man innerhalb eines Statements die 'post' daten holen und zugleich alle relevanten 'post_tag' daten welche allerdings dann ein array darstellen würden.


tabelle 'post':

id | text
5 | 'test'
6 | 'blabla'


tabelle 'post_tag':


post_id | tag
5 | 'php'
5 | 'test'
6 | 'mysql'


und dass ich innerhalb einer Abfrage dann Ergebnisse bekomme welche alle Tags von 'post_tag' mit den Daten von 'post' "verbinden".


Hoffe es wurde einigermaßen ersichtlich was ich meine/suche.

Mit freundlichen Grüßen und schonmal Dankeschön für eure Hilfe,

Pauls

Mitglied: geocast
12.06.2014 um 15:42 Uhr
Also ist die post_id der Fremdschlüssel von post?

Wenn ja:

SELECT post.text, post_tag.tag
FROM post INNER JOIN post_tag ON post.id = post_tag.post_id

Aber mir sieht das noch etwas unlogisch aus, wie die Tabelle aufgebaut ist.
Bitte warten ..
Mitglied: pauls1
12.06.2014 um 16:05 Uhr
hey,

an sich funktioniert das nur bekomme ich ja dann für jeden tag einen text aus 'post', d.h ich bekomme für einen post welcher mehrere tags hat auch soviele tags wie dieser post hat, also auch soviele texte zurück.Sprich auf das obige Beispiel wäre das Ergebnis:

id | text | tag
5 | 'test' | 'php'
5 | 'test' | 'test'
6 | 'blabla' | 'mysql'

und ich würde gerne wissen ob man das doppelt aufkommen der beiden texte mit der id '5' vermeiden kann.

Inwiefern unlogisch ?

Grüße,

Pauls
Bitte warten ..
Mitglied: geocast
12.06.2014 um 16:10 Uhr
Gleiche Abfrage, nur eine kleine änderung

SELECT post.text, post_tag.tag
FROM post LEFT JOIN post_tag ON post.id = post_tag.post_id

Falls das nicht geht probier ein

GROUP BY post.id

am Ende aus
Bitte warten ..
Mitglied: pauls1
12.06.2014 um 16:17 Uhr
danke
ich habs jetzt anders gelöst mit array_agg()
Bitte warten ..
Ähnliche Inhalte
Datenbanken
SQL Statement - Select TOP x - Variables Filterkriterium
Frage von Blu3Scr33nDatenbanken3 Kommentare

Hallo liebe Administratoren, ich baue mir grade eine kleine Access-DB zusammen und bin dabei auf ein Problem gestoßen: Ich ...

Batch & Shell
Powershell Select
gelöst Frage von shwatsonBatch & Shell5 Kommentare

Hallo Community! Zu meinem Problem, ich habe mir ps1 und eine txt Datei erstellt, und versuche nun mit der ...

Datenbanken
Problem mit einem SQL Statement
gelöst Frage von sammy65Datenbanken2 Kommentare

Hallo zusammen, ich habe folgendes Problem mit einem SQL Select Befehl: Ergebnis sollen alle Datensätze sein, die 1. In ...

Datenbanken
Primärschlüsselfehler bei insert Statement
gelöst Frage von dax4funDatenbanken6 Kommentare

Hi liebe Leute, info: habe bei einer DB per select die gewünschten Daten abgefragt und in eine csv gesichert. ...

Neue Wissensbeiträge
Linux

Meltdown und Spectre: Linux Update

Information von Frank vor 2 TagenLinux

Meltdown (Variante 3 des Prozessorfehlers) Der Kernel 4.14.13 mit den Page-Table-Isolation-Code (PTI) ist nun für Fedora freigegeben worden. Er ...

Tipps & Tricks

Solutio Charly Updater Fehlermeldung: Das Abgleichen der Dateien in -Pfad- mit dem Datenobject ist fehlgeschlagen

Tipp von StefanKittel vor 3 TagenTipps & Tricks

Hallo, hier einmal als Tipp für alle unter Euch die mit der Zahnarztabrechnungssoftware Charly von Solutio zu tun haben. ...

Sicherheit

Meltdown und Spectre: Wir brauchen eine "Abwrackprämie", die die CPU-Hersteller bezahlen

Information von Frank vor 3 TagenSicherheit12 Kommentare

Zum aktuellen Thema Meltdown und Spectre: Ich wünsche mir von den CPU-Herstellern wie Intel, AMD oder ARM eine Art ...

Sicherheit

Meltdown und Spectre: Realitätscheck

Information von Frank vor 3 TagenSicherheit12 Kommentare

Die unangenehme Realität Der Prozessorfehler mit seinen Varianten Meltdown und Spectre ist seit Juni 2017 bekannt. Trotzdem sind immer ...

Heiß diskutierte Inhalte
Firewall
Penetrationstester-Labor - Firewalls
Frage von Oli-nuxFirewall10 Kommentare

Mich würde interessieren warum man beim Einrichten eines Penetrationstester-Labor (VMs) die Firewall der Systeme deaktivieren soll? Hat das nur ...

SAN, NAS, DAS
Wer kennt sich mit QNAP und CISCO aus ?
gelöst Frage von MachelloSAN, NAS, DAS9 Kommentare

Hallo Zusammen hier im Forum, Ich habe ein QNas 451+ und dieses NAS hat zwei GBit Lan Adapter die ...

Netzwerkgrundlagen
IPv6 Inter-VLAN Routing
gelöst Frage von clSchakNetzwerkgrundlagen9 Kommentare

Hi ich befasse mich gerade mit der Implementierung von IPv6 was bisher (in einem VLAN) korrekt funktioniert inkl. DNS ...

Windows Netzwerk
Zugriff auf den Desktop Ordner eines anderen Rechners in der gleichen Domäne
gelöst Frage von JensNomaWindows Netzwerk6 Kommentare

Guten Abend, ich war neulich mit unserem Admin am Tisch gesessen. Er an seinem Notebook angemeldet mit dem Domänen-Admin, ...