Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Разбиение одного поля на несколько / 6 сообщений из 6, страница 1 из 1
01.02.2014, 18:07:13
    #38546002
dead_duck
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Разбиение одного поля на несколько
Привет, подскажите как правильно разбить одно поле на несколько.
Имею таблицу со следующей структурой: id (ключ) и data (blob).
В поле data после разжатия лежит текст вида:

body: Диета, как похудеть
domain: dieta-71kg.ru
title: Все о диетах

В итоге нужно поле blob разбить на 2 - в одном оставить только имя домена (domain: dieta-71kg.ru), а в другом всё остальное (body и title)

Заранее огромное спасибо за помощь
...
Рейтинг: 0 / 0
01.02.2014, 18:18:38
    #38546011
javajdbc
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Разбиение одного поля на несколько
dead_duck,

если вы знаете какнибудь язык програмирования,
то лучший вариант -- грузите блоб на клиента,
там распарсите и загрузите обратно.
Похоже это JSON, многие языки скушают его
на раз.

Если охота возится СКЛ-ом, то почитайте стринговые функции:
Можно будет определить позицию начала слова "domain:"
потом добавить 8 или 9 позиций и вырезать значение домайна.
КОнец значения домайна надо отдельно искать --
по началу следуюшего ключевого слова.
...
Рейтинг: 0 / 0
01.02.2014, 19:05:11
    #38546030
dead_duck
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Разбиение одного поля на несколько
К сожалению, программист из меня некудышний. Стараюсь разбираться потихоньку.
Если я правильно Вас поняла, то нужно найти аналог функции explode в php только для mysql?
...
Рейтинг: 0 / 0
01.02.2014, 19:29:51
    #38546038
dead_duck
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Разбиение одного поля на несколько
SUBSTRING_INDEX может подойти?
...
Рейтинг: 0 / 0
01.02.2014, 21:14:38
    #38546073
javajdbc
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Разбиение одного поля на несколько
dead_duckSUBSTRING_INDEX может подойти?

да, и find_in_string, substring ....
...
Рейтинг: 0 / 0
01.02.2014, 22:06:19
    #38546092
RESEARCH
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Разбиение одного поля на несколько
пример на T-SQL

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
DECLARE @C VARCHAR(100)

SET @C='body: Диета, как похудеть domain: dieta-71kg.ru title: Все о диетах'



select 
substring(@C,7+charindex('domain:',@C,3),charindex('title:',@C,3)-charindex('domain:',@C,3)-7) as domain,
substring(@C,6,charindex('domain:',@C,3)-6) as body,
substring(@C,6+charindex('title:',@C,3),len(@C)-charindex('title:',@C,3)-5) as title
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Разбиение одного поля на несколько / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]