Задать вопрос
@OrdeO
just......newbie

Как получить часть строки через MySQL запрос?

Есть запросselect coordinates from mapper;
Он возвращает значения вот такого вида: latitude="32.752658" longitude="-96.644847">
Как можно вытянуть только координаты в 2 колонки.
Что б результатом была таблица вида:
latitude        longitude
32.752658       -96.644847


P.S. Нюанс, числа поле точки не всегда 5 значные, могут быть другой длинны поэтому варинат с SUBSTRING`ом не подойдет.
  • Вопрос задан
  • 616 просмотров
Подписаться 1 Простой 8 комментариев
Помогут разобраться в теме Все курсы
  • Skillbox
    Java-разработчик
    8 месяцев
    Далее
  • Shultais Education
    Основы SQL
    3 месяца
    Далее
  • OTUS
    PHP Developer. Professional
    5 месяцев
    Далее
Решения вопроса 2
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Если порядок всегда один и тот же, то можно через SUBSTRING_INDEX(). Разбить по кавычкам и взять нужные подстроки.
Начиная с версии 8.0 можно через REGEXP_SUBSTR().
Но, по хорошему, надо парсить строку до занесения в базу и записывать уже чистые значения.
Ответ написан
Yunique33
@Yunique33
SELECT  substring_index(substring_index(coordinates, '"', -4), '"', 1) AS latitude,
              substring_index(substring_index(coordinates, '"', -2), '"', 1) AS longitude
FROM mapper;
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы