Ich habe 2 Tabellen mit Daten. "Schlüsselwörter" und "Daten".MySQL: So erhalten Sie Werte aus mehreren Spalten in einer Spalte
key_id (P)
key_word
key_prod (I)
kay_country
key_is_wr
und
id (P)
dat_id (I)
dat_date
dat_is_weekly
Für jedes Schlüsselwort gibt es ein paar verschiedene Zeilen in der Datentabelle verknüpft - mit anderen oder die gleichen Daten in dat_date
. Ich möchte alle Variationen von Daten, die in dieser Tabelle existieren, nur einmal bekommen, damit ich sie alle in einem Array auf meinem PHP-Code anzeigen kann.
Dies ist die Abfrage im Moment verwendet - es ruft mir eine Liste der gleichen Daten aus dem spezifischen "key_app" Wert, den ich brauche. Aber ich möchte nur ein Array von Daten, die für diese spezifische Schlüssel-ID existieren.
SELECT * FROM `keywords`
JOIN `data`
ON `keywords`.`key_id` = `data`.`dat_id`
WHERE `keywords`.`key_app`= 10
Ich habe Figur nur noch nicht, wie zu: 1. nur den dat_date Abschnitt (ich glaube, ich data
brauche dat_date
anstelle der „*“ in meiner Anfrage 2. Wie bekommen.. nur die verschiedenen Daten, die für jeden key_prod
existieren.
ich habe versucht, alle möglichen ORDER BY mit und MAX (id) und nichts scheint in Bezug auf sytaxes gut zu funktionieren
SELECT * FROM `keywords`
JOIN (
SELECT MAX(id) AS id
FROM `data`
GROUP BY `data`.`dat_date`
) `keywords`
ON `keywords`.`key_prod`=10
Ich habe es für eine Weile zu graben, aber kein richtiges Ergebnis
Beispiel: Wenn ich unter dat_date
habe die Vars
2016-06-21
2016-06-21
2016-06-21
2016-06-22
2016-06-22
2016-06-23
2016-06-23
für ein bestimmtes key_app
- ich bekomme:
2016-06-21
2016-06-22
2016-06-23
als Abfrageergebnis
Liste ist Ihr Problem gelöst? – FallAndLearn