Вывести данные которые через запятую - MySQL
Формулировка задачи:
В таблице есть данные, которые через запятую, как их вывести в столбик.
Например А в film_genre записи идут как драма, мелодрама, фэнтези | триллер, детектив, ужасы и так далее.
Вывод такой сейчас:
film_genre
детектив, криминал, драма, комедия
комедия, музыка
триллер, драма
фэнтези, боевик, драма, военный
боевик, триллер, драма, комедия, криминал
драма, криминал
триллер, детектив, ужасы
драма, мелодрама, фэнтези
комедия, приключения, фэнтези
триллер
фантастика, триллер
триллер
драма, мелодрама, комедия
фантастика, боевик, триллер
триллер, криминал
триллер, военный, история
фэнтези, мелодрама, драма
комедия, мелодрама
драма, детектив
драма, биография
драма, криминал
комедия, приключения
мелодрама, детектив
фэнтези, драма, мелодрама
фэнтези, драма, мелодрама
А мне надо:
мелодрама
драма
фэнтези
комедия
приключения
И так далее.
SELECT film_genre FROM `films` ORDER BY `id` DESC
Решение задачи: «Вывести данные которые через запятую»
textual
Листинг программы
SELECT DISTINCT SUBSTRING_INDEX(SUBSTRING_INDEX(film_genre,',', 1),',', -1) AS genre FROM films
Объяснение кода листинга программы
В данном коде на языке SQL выполняется запрос к таблице films
с целью выбрать уникальные значения столбца genre
.
SUBSTRING_INDEX
- это функция, которая возвращает подстроку из заданной строки. В данном случае используется два раза:SUBSTRING_INDEX(film_genre,',', 1)
- из строки в столбцеfilm_genre
извлекается первое вхождение запятой, то есть название жанра фильма.SUBSTRING_INDEX(SUBSTRING_INDEX(film_genre,',', 1),',', -1)
- извлекается последнее вхождение запятой перед последним символом строки, то есть жанр фильма.
DISTINCT
- это ключевое слово, которое используется для выбора уникальных значений столбцаgenre
.AS genre
- это псевдоним, который присваивается вычисленному значению, чтобы его можно было использовать в дальнейшем запросе или при выводе результатов. Таким образом, данный запрос выбирает уникальные жанры фильмов из столбцаfilm_genre
, извлекая их с помощью функцииSUBSTRING_INDEX
и используя ключевое словоDISTINCT
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д