☠Мейнстрим авантюрист
С нами с 15.03.07
Сообщения: 3556
Рейтинг: 2068
|
Добавлено: 11/06/22 в 22:05 |
Дано: БД для вордпресса, в таблице с постами колонка post_title. Требуется к части этих тайтлов в конец дописать слово.
Сами тайтлы 2-х типов
Код: [развернуть] |
Крио
doL8e4vMC5Bp9OimSijYDVJOhFS.jpg
Начальница
zeaGzDvDY0DYmGeSLN6tA4JTrxO.jpg
Расследования Авроры Тигарден: Дом с привидением
76U8bHFPFXgfsdqLNOuNOzTk5tA.jpg
Красотка на нерва
|
Тайтлы идут вперемешку.
https://prnt.sc/GpaSwePRnMXt
Каким запросом в БД возможно дописать в конец адекватных тайтлов (которые НЕ .jpg\png\etc...) одно слово?
Руками не вариант, записей овер 9к
Верю в силу мастера!
|
|
|
|
📈sflash.biz
С нами с 03.11.12
Сообщения: 3913
Рейтинг: 4447
|
Добавлено: 12/06/22 в 15:28 |
Трудно понять, что именно надо, но из того, что я понял, вот код который дописывае some_word к к колонке column_name таблицы table_name, к тем строкам, которые не содержат ".jpg", ".png", ".gif" в тексте..
Код: |
UPDATE table_name
SET column_name = CONCAT(column_name, ' some_word')
WHERE column_name NOT LIKE '%.jpg%'
AND column_name NOT LIKE '%.png%'
AND column_name NOT LIKE '%.gif%';
|
|
|
|
|
☠Мейнстрим авантюрист
С нами с 15.03.07
Сообщения: 3556
Рейтинг: 2068
|
Добавлено: 12/06/22 в 17:03 |
S_Flash писал: | Трудно понять, что именно надо, но из того, что я понял |
Есть строки
Крио
doL8e4vMC5Bp9OimSijYDVJOhFS.jpg
Начальница
zeaGzDvDY0DYmGeSLN6tA4JTrxO.jpg
Расследования Авроры Тигарден: Дом с привидением
76U8bHFPFXgfsdqLNOuNOzTk5tA.jpg
Красотка на нерва
Из них надо сделать так
Крио (2022)
doL8e4vMC5Bp9OimSijYDVJOhFS.jpg
Начальница (2022)
zeaGzDvDY0DYmGeSLN6tA4JTrxO.jpg
Расследования Авроры Тигарден: Дом с привидением (2022)
76U8bHFPFXgfsdqLNOuNOzTk5tA.jpg
Красотка на нерва (2022)
Т.е. просто дописать "(2022)" к тайтлам, которые не .jpg\png\etc...
|
|
|
|
☠Мейнстрим авантюрист
С нами с 15.03.07
Сообщения: 3556
Рейтинг: 2068
|
Добавлено: 12/06/22 в 17:06 |
S_Flash писал: |
Код: |
UPDATE table_name
SET column_name = CONCAT(column_name, ' some_word')
WHERE column_name NOT LIKE '%.jpg%'
AND column_name NOT LIKE '%.png%'
AND column_name NOT LIKE '%.gif%';
| |
Не сработало (
Цитата: | #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'FROM wp_posts WHERE post_title NOT LIKE '%.jpg%' AND post_title NOT LIKE '%' at line 2
|
|
|
|
|
С нами с 29.11.14
Сообщения: 254
Рейтинг: 575
|
Добавлено: 12/06/22 в 21:03 |
Черный Корсар писал: | Не сработало ( |
В ероре, что ты написал есть FROM wp_posts, однако в запросе, который тебе дали фром не было вообще.
С нуля напиши еще раз так имхо.
Код: |
UPDATE wp_posts
SET post_title= CONCAT(post_title, ' some_word')
WHERE post_title NOT LIKE '%.jpg%'
AND post_title NOT LIKE '%.png%'
AND post_title NOT LIKE '%.gif%';
|
some_word замени на нужное.
А правильнее всего будет, дописать в код вордпресс пре_хук фильтр, который добавить, что бы не каверкать базу.
|
|
|
|
☠Мейнстрим авантюрист
С нами с 15.03.07
Сообщения: 3556
Рейтинг: 2068
|
Добавлено: 12/06/22 в 21:40 |
xjam писал: | В ероре, что ты написал есть FROM wp_posts, однако в запросе, который тебе дали фром не было вообще. |
Получил ту же самую ошибку. https://prnt.sc/oY7fnB33fCCu
xjam писал: | А правильнее всего будет, дописать в код вордпресс пре_хук фильтр, который добавить, что бы не каверкать базу. |
Пофиксить базу это единственное, что на ум пришло. Есть какие то другие варианты дописать тайтлы в постах? Вариант прописать жестко в темплейте - не вариант к сожалению (
|
|
|
|
С нами с 29.11.14
Сообщения: 254
Рейтинг: 575
|
Добавлено: 13/06/22 в 07:12 |
Черный Корсар писал: | Получил ту же самую ошибку. |
Что-то не то у тебя в клиенте или ты добаляешь еще что-то в запрос.
Я phpmyadmin лет 10 в глаза не видет конечно, но там написанно иммитировать запрос, а вроде надо выполнять запрос в другом месте.
Попробуй залить админер возможно удасться выполнить так запрос.
Там прям надо выбрать базу, и нажать на SQL command для запроса прямо в базу.
|
|
|
|
С нами с 29.11.14
Сообщения: 254
Рейтинг: 575
|
Добавлено: 13/06/22 в 07:39 |
Если ты просто хочешь посмотреть как будут выглядеть данные, до того как сделать апдейт данных в базе,
напиши такой запрос
Код: |
SELECT CONCAT(post_title, ' some_word'), * FROM wp_posts WHERE post_title NOT LIKE '%.jpg%' AND post_title NOT LIKE '%.png%' AND post_title NOT LIKE '%.gif%';
|
|
|
|
|
☠Мейнстрим авантюрист
С нами с 15.03.07
Сообщения: 3556
Рейтинг: 2068
|
Добавлено: 13/06/22 в 10:21 |
xjam писал: | Я phpmyadmin лет 10 в глаза не видет конечно, но там написанно иммитировать запрос, а вроде надо выполнять запрос в другом месте.
|
Точно, если не эмитировать запрос, а сразу выполнить, то код
Код: [развернуть] |
UPDATE wp_posts
SET post_title= CONCAT(post_title, ' some_word')
WHERE post_title NOT LIKE '%.jpg%'
AND post_title NOT LIKE '%.png%'
AND post_title NOT LIKE '%.gif%';
|
Сработал.
Спасибо всем!
|
|
|
|
С нами с 04.12.16
Сообщения: 3571
Рейтинг: 1289
|
Добавлено: 15/06/22 в 11:50 |
Увидел тему и появилась одна мыслишка... подскажите знающие люди, а как можно типа как в экселе отредактировать колонки- надо содержимое одной колонки заменить на другое, на скрине, к примеру, выделил колонку с цифрами, надо ее заполнить другим содержимым
|
|
|
|