MySQL Forums
Forum List  »  German

Abfrage über 5 Tabellen mit JOIN und Array Werte
Posted by: Marius Guias
Date: April 19, 2023 06:02AM

Hallo @all,

ich versuche verzweifelt seit Tagen eine Abfrage zu machen über mehrere Tabellen.
Eine Tabelle hat Werte als Array gespeichert - das sind jedoch ID's. Ich schaffe es nicht den Lesbaren Wert an dieser Stelle zu bekommen.


Das ist meine Haupt-Tabelle:
--
-- Tabellenstruktur für Tabelle `tcpdf_wiki`
--

CREATE TABLE IF NOT EXISTS `tcpdf_wiki` (
`id` int(11) NOT NULL,
`titel` varchar(255) NOT NULL,
`kunden_id` varchar(255) NOT NULL,
`kategorie_id` varchar(255) NOT NULL,
`tags_id` varchar(255) NOT NULL,
`text` text NOT NULL,
`datum` timestamp NOT NULL
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8;

--
-- Daten für Tabelle `tcpdf_wiki`
--

INSERT INTO `tcpdf_wiki` (`id`, `titel`, `kunden_id`, `kategorie_id`, `tags_id`, `text`, `datum`) VALUES
(6, 'asdss123', '2', '1681204907941', '{\r\n "tagid": "1234",\r\n "tagid": "7599"\r\n }', '<ol><li>xyvxyc</li><li>vxyvcxyvy</li><li>cxyvyxv</li><li>111</li><li>222</li><li>333</li></ol>', '2023-04-13 12:55:52'),
(7, 'test 2', '3', '1681283583832', '["1681204115439","1681204890394"]', '<p>asdasdasd</p><p>asdd</p>', '2023-04-13 11:13:21');

--
-- Indizes der exportierten Tabellen
--

--
-- Indizes für die Tabelle `tcpdf_wiki`
--
ALTER TABLE `tcpdf_wiki`
ADD PRIMARY KEY (`id`);

--
-- AUTO_INCREMENT für exportierte Tabellen
--

--
-- AUTO_INCREMENT für Tabelle `tcpdf_wiki`
--
ALTER TABLE `tcpdf_wiki`
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=8;


Tabelle mit den Kaategorien:
--
-- Tabellenstruktur für Tabelle `tcpdf_wiki_kat`
--

CREATE TABLE IF NOT EXISTS `tcpdf_wiki_kat` (
`katid` varchar(255) NOT NULL,
`wiki_kategorie_name` varchar(255) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

--
-- Daten für Tabelle `tcpdf_wiki_kat`
--

INSERT INTO `tcpdf_wiki_kat` (`katid`, `wiki_kategorie_name`) VALUES
('1681204092601', 'kat3'),
('1681204170871', 'kat22'),
('1681204907941', 'kat11'),
('1681283583832', 'ttttt');

--
-- Indizes der exportierten Tabellen
--

--
-- Indizes für die Tabelle `tcpdf_wiki_kat`
--
ALTER TABLE `tcpdf_wiki_kat`
ADD PRIMARY KEY (`katid`);


Tabelle mit den Schlagwörter (tags):
--
-- Tabellenstruktur für Tabelle `tcpdf_wiki_tag`
--

CREATE TABLE IF NOT EXISTS `tcpdf_wiki_tag` (
`tagid` varchar(255) NOT NULL,
`wiki_tag_name` varchar(255) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

--
-- Daten für Tabelle `tcpdf_wiki_tag`
--

INSERT INTO `tcpdf_wiki_tag` (`tagid`, `wiki_tag_name`) VALUES
('1681204115439', 'tag3'),
('1681204170872', 'tag2'),
('1681204890394', 'tag1');

--
-- Indizes der exportierten Tabellen
--

--
-- Indizes für die Tabelle `tcpdf_wiki_tag`
--
ALTER TABLE `tcpdf_wiki_tag`
ADD PRIMARY KEY (`tagid`);


Tabelle mit den Uploads:
--
-- Tabellenstruktur für Tabelle `tcpdf_wikiuploads`
--

CREATE TABLE IF NOT EXISTS `tcpdf_wikiuploads` (
`id` int(11) NOT NULL,
`wikiid` varchar(255) NOT NULL,
`file_name` varchar(255) NOT NULL,
`file_path` varchar(255) NOT NULL,
`ext` varchar(255) NOT NULL,
`upload_time` varchar(255) NOT NULL
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8;

--
-- Daten für Tabelle `tcpdf_wikiuploads`
--

INSERT INTO `tcpdf_wikiuploads` (`id`, `wikiid`, `file_name`, `file_path`, `ext`, `upload_time`) VALUES
(1, '6', 'artikel_mit_herrsteller_nr1.xlsx', 'wiki/6/', 'xlsx', '13.04.2023 09:17:37'),
(4, '6', 'Logo_Farbe_Schrift.pdf', 'wiki/6/', 'pdf', '13.04.2023 10:22:52');

--
-- Indizes der exportierten Tabellen
--

--
-- Indizes für die Tabelle `tcpdf_wikiuploads`
--
ALTER TABLE `tcpdf_wikiuploads`
ADD PRIMARY KEY (`id`);

--
-- AUTO_INCREMENT für exportierte Tabellen
--

--
-- AUTO_INCREMENT für Tabelle `tcpdf_wikiuploads`
--
ALTER TABLE `tcpdf_wikiuploads`
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=5;


Tabelle mit den Kunden:
--
-- Tabellenstruktur für Tabelle `wp_wpdatatable_41`
--

CREATE TABLE IF NOT EXISTS `wp_wpdatatable_41` (
`kundennummer` varchar(255) DEFAULT NULL,
`wdt_ID` int(11) NOT NULL,
`firma` varchar(255) DEFAULT NULL,
`anrede` varchar(255) DEFAULT NULL,
`ansprechpartner` varchar(255) DEFAULT NULL,
`strassenr` varchar(255) DEFAULT NULL,
`plz` varchar(255) DEFAULT NULL,
`ort` varchar(255) DEFAULT NULL,
`land` varchar(255) DEFAULT NULL,
`telefon` varchar(255) DEFAULT NULL,
`emailang` varchar(2000) DEFAULT NULL,
`emailab` varchar(2000) DEFAULT NULL,
`emaills` varchar(2000) DEFAULT NULL,
`emailrech` varchar(2000) DEFAULT NULL
) ENGINE=InnoDB AUTO_INCREMENT=26 DEFAULT CHARSET=utf8;

--
-- Daten für Tabelle `wp_wpdatatable_41`
--

INSERT INTO `wp_wpdatatable_41` (`kundennummer`, `wdt_ID`, `firma`, `anrede`, `ansprechpartner`, `strassenr`, `plz`, `ort`, `land`, `telefon`, `emailang`, `emailab`, `emaills`, `emailrech`) VALUES
('21003', 2, 'Kunde GmbH', 'Herr', 'Max Mustermann', 'Haupt Str. 26', '88xxx', 'Musterstadt', 'Deutschland', NULL, 'test@test.de', 'test2@test.de', 'test3@test.de', 'test4@test.de');

--
-- Indizes der exportierten Tabellen
--

--
-- Indizes für die Tabelle `wp_wpdatatable_41`
--
ALTER TABLE `wp_wpdatatable_41`
ADD UNIQUE KEY `wdt_ID` (`wdt_ID`);

--
-- AUTO_INCREMENT für exportierte Tabellen
--

--
-- AUTO_INCREMENT für Tabelle `wp_wpdatatable_41`
--
ALTER TABLE `wp_wpdatatable_41`
MODIFY `wdt_ID` int(11) NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=26;



Meine Abfrage:
SELECT
tcpdf_wiki.id,
tcpdf_wiki.titel AS Titel,
wp_wpdatatable_41.firma AS Kunde,
tcpdf_wiki_kat.wiki_kategorie_name AS Kategorie,
tcpdf_wiki.tags_id AS Schlagwörter,
tcpdf_wiki.text AS Text

FROM `tcpdf_wiki`

LEFT JOIN wp_wpdatatable_41
ON tcpdf_wiki.kunden_id = wp_wpdatatable_41.wdt_ID

LEFT JOIN tcpdf_wiki_kat
ON tcpdf_wiki.kategorie_id = tcpdf_wiki_kat.katid

Ist-Ergebnis:

id | Titel | Kunde | Kategorie | Schlagwörter | Text
6 | asdss123 | Kunde GmbH | kat11 | ["1681204115439","1681204890394"] | asdasdasd


Soll-Ergebnis:
id | Titel | Kunde | Kategorie | Schlagwörter | Text | Uploads
6 | asdss123 | Kunde GmbH | kat11 | ["tag1","tag2"] | asdasdasd | ["artikel_mit_herrsteller_nr1.xlsx", "Logo_Farbe_Schrift.pdf"]



Ich habe bei den "wiki" Tabellen freie Hand, sprich ich kann diese auch verändern falls es nötig sein sollte.

Freue mich über jede Antwort/Lösung/Idee.

Options: ReplyQuote


Subject
Views
Written By
Posted
Abfrage über 5 Tabellen mit JOIN und Array Werte
132
April 19, 2023 06:02AM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.