powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / проблема с SUBSTR
14 сообщений из 14, страница 1 из 1
проблема с SUBSTR
    #39668518
dermama
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Создал таблицу

create table interestss
(
interests varchar(50) not null,

interest1 varchar(20) default null,

interest2 varchar(20) default null,

interest3 varchar(20) default null,

interest4 varchar(20) default null
);

insert into interestss
(interests)
values
('один, два, три, четыре');


далее запись до первой запятой перетаскиваю в столбец interest1 - все в порядке.

update interestss
set interest1 = substring_index(interests, ',', 1);

смотри скриншот

далее хочу из столбца interests удлить все до следующей записи(а именно "два")-то есть "один , запятую и пробел" и происходит бред, хотя делаю все как в книге.

update interestss
set interests = substr(interests, length(interest1)+2);

в итоге смотри скриншот.
Вопрос, как с этим бороться? или быть может дело в версии, уменя 8.0, просто в документации написано, что функцией SUBSTR можно только до версии 5.7 пользоваться.
...
Рейтинг: 0 / 0
проблема с SUBSTR
    #39668519
dermama
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
dermama
далее хочу из столбца interests удалить все до следующей записи(а именно "два")-то есть "один , запятую и пробел" и происходит бред, хотя делаю все как в книге.

update interestss
set interests = substr(interests, length(interest1)+2);

в итоге смотри скриншот.
Вопрос, как с этим бороться? или быть может дело в версии, уменя 8.0, просто в документации написано, что функцией SUBSTR можно только до версии 5.7 пользоваться.
...
Рейтинг: 0 / 0
проблема с SUBSTR
    #39668524
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dermamaпросто в документации написано, что функцией SUBSTR можно только до версии 5.7 пользоваться.Нету там такого.

https://dev.mysql.com/doc/refman/8.0/en/string-functions.html#function_length Returns the length of the string str, measured in bytes. A multibyte character counts as multiple bytes. This means that for a string containing five 2-byte characters, LENGTH() returns 10, whereas CHAR_LENGTH() returns 5.Сравните с этим:
https://dev.mysql.com/doc/refman/8.0/en/string-functions.html#function_char-length Returns the length of the string str, measured in characters. A multibyte character counts as a single character. This means that for a string containing five 2-byte characters, LENGTH() returns 10, whereas CHAR_LENGTH() returns 5.
...
Рейтинг: 0 / 0
проблема с SUBSTR
    #39668526
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dermamaуменя 8.0, просто в документации написано, что функцией SUBSTR можно только до версии 5.7 пользоватьсяВ документации по 8.0 функция SUBSTR() есть без оговорок относительно 5.7 https://dev.mysql.com/doc/refman/8.0/en/string-functions.html#function_substr
Где и что я пропустил или не заметил?
...
Рейтинг: 0 / 0
проблема с SUBSTR
    #39668530
dermama
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
да бог с ней с этой документацией, мне что делать с данным примером то?????
...
Рейтинг: 0 / 0
проблема с SUBSTR
    #39668533
dermama
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miksoftdermamaпросто в документации написано, что функцией SUBSTR можно только до версии 5.7 пользоваться.Нету там такого.

https://dev.mysql.com/doc/refman/8.0/en/string-functions.html#function_length Returns the length of the string str, measured in bytes. A multibyte character counts as multiple bytes. This means that for a string containing five 2-byte characters, LENGTH() returns 10, whereas CHAR_LENGTH() returns 5.Сравните с этим:
https://dev.mysql.com/doc/refman/8.0/en/string-functions.html#function_char-length Returns the length of the string str, measured in characters. A multibyte character counts as a single character. This means that for a string containing five 2-byte characters, LENGTH() returns 10, whereas CHAR_LENGTH() returns 5.

пока что то не очень понимаю, честно говоря.
...
Рейтинг: 0 / 0
проблема с SUBSTR
    #39668543
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вроде, в 8.0 можно регекспы задействовать под эту задачу. По идее, REGEXP_REPLACE(). Заменить всё от начала строки до запятой на пустую строку. Получится?
...
Рейтинг: 0 / 0
проблема с SUBSTR
    #39668544
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Прошу пардону, не до запятой, а до пробела, конечно же.
...
Рейтинг: 0 / 0
проблема с SUBSTR
    #39668547
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dermamaпока что то не очень понимаю, честно говоря.В первом случае байты, а во втором символы.
...
Рейтинг: 0 / 0
проблема с SUBSTR
    #39669077
dermama
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miksoftdermamaпока что то не очень понимаю, честно говоря.В первом случае байты, а во втором символы.

это я понял, а вот как применить к моему примеру - нет
...
Рейтинг: 0 / 0
проблема с SUBSTR
    #39669105
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dermamamiksoftпропущено...
В первом случае байты, а во втором символы.

это я понял, а вот как применить к моему примеру - нетИспользовать CHAR_LENGTH()
...
Рейтинг: 0 / 0
проблема с SUBSTR
    #39669143
dermama
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miksoftdermamaпропущено...


это я понял, а вот как применить к моему примеру - нетИспользовать CHAR_LENGTH()

спасибо, попробую, вот только почему в книге так, а мне нужно понять , что делать нужно по-другому) вот очень интересно)
...
Рейтинг: 0 / 0
проблема с SUBSTR
    #39669145
dermama
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miksoftdermamaпропущено...


это я понял, а вот как применить к моему примеру - нетИспользовать CHAR_LENGTH()

все полуичлось, благодарю, но как мне было самому допереть до этого, ведь я прежде чем обращаться к форуму всегда пробую понять сам, однако, ничего не выходит....
...
Рейтинг: 0 / 0
проблема с SUBSTR
    #39669722
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dermamaпочему в книге такПотому что в книге однобайтовая кодировка, а у вас многобайтовая.
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / проблема с SUBSTR
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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