У меня есть 2 таблицы с данными. «ключевые слова» и «данные».MySQL: Как получить значения из нескольких столбцов в одном столбце
key_id (P)
key_word
key_prod (I)
kay_country
key_is_wr
и
id (P)
dat_id (I)
dat_date
dat_is_weekly
Для каждого ключевого слова есть несколько различных строк, связанных в таблице данных - с разными или же даты в dat_date
. Я хочу получить все варианты дат, существующих в этой таблице, только один раз, чтобы я мог отображать их все в массиве в моем PHP-коде.
Это запрос im, который в настоящее время используется, - он получает список тех же дат из определенного значения «key_app», которое мне нужно. Но я хочу получить массив дат, существующих для данного ключевого ключа.
SELECT * FROM `keywords`
JOIN `data`
ON `keywords`.`key_id` = `data`.`dat_id`
WHERE `keywords`.`key_app`= 10
Я просто не выяснить еще, как: 1. Получить только dat_date раздел (я думаю, что мне нужно data
dat_date
вместо «*» в моем запросе 2. Как получить.. только разные даты, которые существуют для каждого key_prod
.
Я пытался использовать все виды ORDER BY и MAX (ID) и ничего, кажется, работает хорошо с точки зрения sytaxes
SELECT * FROM `keywords`
JOIN (
SELECT MAX(id) AS id
FROM `data`
GROUP BY `data`.`dat_date`
) `keywords`
ON `keywords`.`key_prod`=10
Я рою его на некоторое время, но не правильного результата
Пример: Если у меня есть под dat_date
в варах
2016-06-21
2016-06-21
2016-06-21
2016-06-22
2016-06-22
2016-06-23
2016-06-23
для конкретного key_app
- я получаю:
2016-06-21
2016-06-22
2016-06-23
в качестве результата запроса
Решена ли ваша проблема? – FallAndLearn