С нами с 21.10.10
Сообщения: 252
Рейтинг: 87
|
Добавлено: 10/11/15 в 18:35 |
Всем привет!
Подскажите, возможно ли решить вопрос посредством выполнения mysql запроса(запросов). Либо все гораздо сложнее?
Суть такова.
Есть база данных (для юзеров на сайте), в базе есть таблица user, в этой таблице есть поле country. Здесь прописана текстом страна юзера (United States, Greece и т.д.).
Так же в этой таблице есть поле country_id, в котором должно быть указано ID для страны юзера. Например ID для United States это 230.
Но по некоторым причинам в этом поле нет вообще никаких значений.
В этой же базе данных, есть таблица geo_country. В этой таблице, в поле country_title список стран текстом, а в поле country_id соответствующие ID для этих стран.
Как мне проставить в таблицу user эти ID? Естественно в соответствии со списком в таблице geo_country.
Руками прописывать не вариант никак Строк очень много
|
|
|
|
.:GLX Group:.
С нами с 17.05.07
Сообщения: 693
Рейтинг: 752
|
Добавлено: 10/11/15 в 18:48 |
UPDATE user, geo_country SET user. country_id = geo_country.id WHERE user.country = geo_country.country_title
|
|
|
|
С нами с 02.08.03
Сообщения: 136
Рейтинг: 101
|
Добавлено: 10/11/15 в 19:10 |
И еще проверить, что у таблицы user есть индекс по полю country, а у geo_country => country_title, если много записей - будет веселее.
ну типы полей должны совпадать.
|
|
|
|
С нами с 30.10.12
Сообщения: 3123
Рейтинг: 2541
|
Добавлено: 10/11/15 в 19:21 |
Ставишь phpmyadmin,экспортируешь нужные таблицы в формате для екселя и редактируешь в екселе,потом стираешь нужную таблицу и экспортируешь отредактированную,ессно перед этим делаешь бекап базы данных,и вся недолга Лично я приноровился в екселе редактировать нужные таблицы это просто песня !
|
|
|
|
💀💀💀
С нами с 31.05.10
Сообщения: 4689
Рейтинг: 728
|
Добавлено: 10/11/15 в 19:26 |
Потратил бы пару вечеров на основы SQL и больше никогда бы так не выебывался
Запросами гораздо быстрее делать.
|
|
|
|
С нами с 21.10.10
Сообщения: 252
Рейтинг: 87
|
Добавлено: 10/11/15 в 20:00 |
Чо то не получается нифига.
Думает долго, в итоге ничего не меняет.
Значения не проставляются.
Типы полей - у одного varchar(100) и другого varchar(255).
Индекс - ХЗ чо это такое, в phpmyadmin как то глянуть можно?
|
|
|
|
С нами с 30.10.12
Сообщения: 3123
Рейтинг: 2541
|
Добавлено: 10/11/15 в 22:52 |
|
|
|
|
С нами с 30.10.12
Сообщения: 3123
Рейтинг: 2541
|
Добавлено: 10/11/15 в 22:53 |
Roys писал: |
Индекс - ХЗ чо это такое, в phpmyadmin как то глянуть можно? |
В phpmyadmin нехуй глядеть,ставь его на сервак и пользуйся
|
|
|
|
📈sflash.biz
С нами с 03.11.12
Сообщения: 3913
Рейтинг: 4447
|
Добавлено: 10/11/15 в 22:59 |
|
|
|
|
С нами с 18.10.02
Сообщения: 4165
Рейтинг: 3365
|
Добавлено: 10/11/15 в 23:10 |
Securom писал: | Ставишь phpmyadmin,экспортируешь нужные таблицы в формате для екселя и редактируешь в екселе,потом стираешь нужную таблицу и экспортируешь отредактированную,ессно перед этим делаешь бекап базы данных,и вся недолга |
Суровый метод. Не проще ли туториал по SQL прочитать?
|
|
|
|
С нами с 21.10.10
Сообщения: 252
Рейтинг: 87
|
Добавлено: 11/11/15 в 00:13 |
Все работает однако. Только медленно.
База большая
Всем спасибо, особенно k1ing-у!!!!
|
|
|
|
С нами с 30.10.12
Сообщения: 3123
Рейтинг: 2541
|
Добавлено: 11/11/15 в 08:55 |
|
|
|
|
💀💀💀
С нами с 31.05.10
Сообщения: 4689
Рейтинг: 728
|
Добавлено: 11/11/15 в 10:04 |
Securom писал: | Мы не ищем легких путей,да и для такого тупицы как я это охуенный выход чтобы редактировать базы данных |
Это не сложно )) Можешь даже тут вопросы задавать - ответят.
S_Flash писал: | Убогая хуета! |
Чего тут муадмин не нравится? Отличный инструмент для быстрого и визуального редактирвания бд. Особенно выручет копипаста, когда перебирайешь експлены сложных запросов + постоянный перебор в поиске оптимальных индексов. По ссх устанешь клацать по клаве набирая все вручную.
|
|
|
|
💀💀💀
С нами с 31.05.10
Сообщения: 4689
Рейтинг: 728
|
Добавлено: 11/11/15 в 10:10 |
Roys писал: | Все работает однако. Только медленно.
База большая
Всем спасибо, особенно k1ing-у!!!! |
Если не нужен полнотекстовый поиск, то можно, и даже нуждно перевести базы с муисам на инноДБ. Это даст возможность использовать транзакции. К примеру если надо поменять значения всей таблице и операция предполагает замену разношерстными данными, то можно менять пачками по несколько тысяч в одной транзакции. Будет намного быстрее все происходить, за счет того, что в транзакциях нет перестройки индексов после каждой замены или вставки, как это происходит при обычном цикличном запросе.
|
|
|
|
С нами с 24.10.04
Сообщения: 18881
Рейтинг: 9010
|
Добавлено: 11/11/15 в 10:16 |
Ailk писал: | Если не нужен полнотекстовый поиск, то можно, и даже нуждно перевести базы с муисам на инноДБ. |
надо смотреть на кол-во всех запросов, если селектов 95%, то будет сильный проигрыш инноДБ
|
|
|
|
💀💀💀
С нами с 31.05.10
Сообщения: 4689
Рейтинг: 728
|
Добавлено: 11/11/15 в 11:59 |
ibiz писал: | надо смотреть на кол-во всех запросов, если селектов 95%, то будет сильный проигрыш инноДБ |
Ну, не такой уж и сильный. К тому же если грамотно использовать кеширование, то будет совсем незаметно. Но в целом да, согласен. Если только селекты, то муисам.
|
|
|
|
📈sflash.biz
С нами с 03.11.12
Сообщения: 3913
Рейтинг: 4447
|
Добавлено: 11/11/15 в 12:02 |
Ailk писал: | Чего тут муадмин не нравится? Отличный инструмент для быстрого и визуального редактирвания бд. Особенно выручет копипаста, когда перебирайешь експлены сложных запросов + постоянный перебор в поиске оптимальных индексов. По ссх устанешь клацать по клаве набирая все вручную. |
У него один плюс, пока пытался понять, что там показывает этот его "великий" инетерфейс, быстрее выучил SQL.. Просмотр таблиц - ещё куда ни шло, но вот что-то поменять лично меня вводит в ступор.
|
|
|
|
С нами с 24.10.04
Сообщения: 18881
Рейтинг: 9010
|
Добавлено: 11/11/15 в 12:03 |
Ailk писал: | Ну, не такой уж и сильный. К тому же если грамотно использовать кеширование, то будет совсем незаметно. Но в целом да, согласен. Если только селекты, то муисам. |
я проверял и пытался инноДБ хотябы подтянуть к уровню муисам по скорости выборки, даже голый муисам без ювелирных настроек на порядок быстрее инноДБ*
может я что-то не правильно готовил?
* речь про селекты
|
|
|
|
www.phpdevs.com
С нами с 24.10.02
Сообщения: 16633
Рейтинг: 16105
|
Добавлено: 11/11/15 в 12:33 |
innodb просто надежнее в записи и структуре. А myisam тупо читалка данных. Так что все от задачи зависит.
|
|
Пишу на php/mysql/django за вменяемые деньги.
Обращаться в личку.
|
0
|
|
|
С нами с 24.10.04
Сообщения: 18881
Рейтинг: 9010
|
Добавлено: 11/11/15 в 12:41 |
Stek писал: | innodb просто надежнее в записи и структуре. А myisam тупо читалка данных. Так что все от задачи зависит. |
задача - быстродействие
что если писать в innodb, а читать из myisam, решаемая задача при >1000m записей?
|
|
|
|
www.phpdevs.com
С нами с 24.10.02
Сообщения: 16633
Рейтинг: 16105
|
Добавлено: 11/11/15 в 12:53 |
ibiz писал: | что если писать в innodb, а читать из myisam |
Как ты себе такое представляешь ? Это как кормить Васю, а что бы сытым был Петя
|
|
Пишу на php/mysql/django за вменяемые деньги.
Обращаться в личку.
|
0
|
|
|
С нами с 24.10.04
Сообщения: 18881
Рейтинг: 9010
|
Добавлено: 11/11/15 в 13:02 |
Stek писал: | Как ты себе такое представляешь ? Это как кормить Васю, а что бы сытым был Петя trollface.png |
реально видел такое решение на стековерфлоу, когда настраивал свою мариюдб
|
|
|
|
💀💀💀
С нами с 31.05.10
Сообщения: 4689
Рейтинг: 728
|
Добавлено: 11/11/15 в 13:05 |
Нет там порядков. Максимум процентов 10, не больше.
1 из примеров.
http://dba.stackexchange.com/questions/17431/which-is-faster-innodb-or-myisam
Да и любые другие бенчмарки посмотри. Нет нигде "порядков" превосходства у муисама. Однако возможность транзакций и надежность данных как по мне всеже перевешивает этот скудный профит.
Вот прикол кстати со смарт сиджем. У него если поставить 1000 галер на удаление, то произойдет овердохуя запросов на апдейт выбранных галер в цикле. Не помню точно, вроде как раз муисам использутся. Суть в чем. Если бы он использовал транзакции, ебаное массовое редактирование не вешало бы админку на хрен знает сколько. А так постоянный блок целых таблиц и перестройка индексов. Бред короче )
|
|
|
|
С нами с 24.10.04
Сообщения: 18881
Рейтинг: 9010
|
Добавлено: 11/11/15 в 14:23 |
Ailk писал: | Нет там порядков. Максимум процентов 10, не больше. |
ну может и так
|
|
|
|
www.phpdevs.com
С нами с 24.10.02
Сообщения: 16633
Рейтинг: 16105
|
Добавлено: 11/11/15 в 15:02 |
ibiz писал: | реально видел такое решение на стековерфлоу, когда настраивал свою мариюдб |
бред какой то, не может такого быть. Или задача весьма специфичная, где можно с запозданием данные отдавать.
|
|
Пишу на php/mysql/django за вменяемые деньги.
Обращаться в личку.
|
0
|
|
|