[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: выборка IN из ячейки
Kusss
В таблице значения лежат в виде цифр через запятую.

"16,19,55,46" , "68,35,40,75,33,31,24,15" , "78,60,12,14,37,21,9" и т.д

Ссылаются на ID в этой же таблице.
Мне необходимо вести наименования через GROUP_CONCAT

SELECT 
count(*) AS number, r.name, r.id,
(

SELECT
GROUP_CONCAT(`name`)
FROM
`region`
WHERE
id IN (r.ryadom)
)
AS ryadom
FROM
`data` AS p
INNER JOIN
`region` AS r ON r.id = p.region_id
WHERE
r.name = '$name'


Проблема во вложенном запросе, в таком виде работать не хочет (выводит 1 ID).
Valick
Цитата (Kusss @ 17.06.2019 - 12:40)
В таблице значения лежат в виде цифр через запятую.
Kusss
Valick
Все мы знаем твое отношение к таким структурам smile.gif
НО
у меня всего 90 строк, и статичная таблица
Valick
Kusss, ну а я тут причём smile.gif нарушение первого закона не позволяет работать с данными на уровне БД.

_____________
Стимулятор ~yoomoney - 41001303250491
bestxp
Valick был бы потгресс можно было бы сделать поле массив wink.gif но тут да, нарушаем
Kusss
Сделал как "нужно", но запрос получился тот ещё
SELECT 
GROUP_CONCAT(`name_rus`)
FROM
`region`
WHERE
id IN (
SELECT
ryadom_id
FROM
`region_ryadom`
WHERE
region_id = r.id
)
Valick
Kusss, это вполне обычный запрос и гораздо симпатичнее предыдущего, хотя я лично не люблю IN в подобной ситуации, для мня JOIN гораздо нагляднее.
IN юзаю только когда данные не из БД.

_____________
Стимулятор ~yoomoney - 41001303250491
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.