Как исправить ошибку с помощью запроса «на каждую группу» в phpMyAdmin? - PullRequest
0 голосов
/ 05 апреля 2019

У меня есть специфическая проблема с запросом SQL в phpMyAdmin. Мой запрос работает хорошо только для первой созданной сущности в моей таблице (и для ее дочерних элементов), но не работает для других сущностей. В чем может быть проблема?

Я пытался использовать запрос в разных базах данных, и он работает правильно.

select title_media,MAX(LENGTH(text_media)) as TEXTFieldSize
                    from media
                    where LENGTH(text_media) = 
                    (select MAX(LENGTH(text_media)) from media ) AND fk_event=id_event 

Я ожидаю, что выводом будет заголовок мультимедиа с самым длинным полем text_media. Для первого объекта это работает хорошо, но для следующего я получаю только пустые строки.

1 Ответ

0 голосов
/ 05 апреля 2019

Если вы пытаетесь найти медиа-событие с самым длинным test_media для определенного fk_event (что равно <id_event>), то вы пропускаете условие в подзапросе

select m1.title_media,
       MAX(LENGTH(m1.text_media)) as TEXTFieldSize
from media m1
where LENGTH(m1.text_media) = (
   select MAX(LENGTH(m2.text_media)) 
   from media m2
   where m1.fk_event=m2.fk_event
) AND m1.fk_event=<id_event>
...