balboa 33 Posted October 13, 2016 Report Share Posted October 13, 2016 Всем привет Есть задача записать в ячейки с пустым значением Null свой текст. Просьба подсказать sql запрос для этого действия Пробовал UPDATE wp_postmeta SET meta_key = REPLACE (meta_key, 'Null', 'new text') и этот UPDATE wp_postmeta SET meta_key = REPLACE (meta_key, '', 'new text') не получается. Link to post Share on other sites
Модератор files 2843 Posted October 13, 2016 Модератор Report Share Posted October 13, 2016 Забыли указать имя произвольного поля: update set 'wp_postmeta' = replace('meta_value','Null','new text') WHERE 'meta_key' = 'price';P.S. UPDATE wp_postmeta SET meta_key = REPLACE (meta_key, 'Null', 'new text') - так вы обновили имя пользовательского поля с Null на new text Link to post Share on other sites
balboa 33 Posted October 13, 2016 Author Report Share Posted October 13, 2016 Забыли указать имя произвольного поля: update set 'wp_postmeta' = replace('meta_value','Null','new text') WHERE 'meta_key' = 'price';P.S. UPDATE wp_postmeta SET meta_key = REPLACE (meta_key, 'Null', 'new text') - так вы обновили имя пользовательского поля с Null на new text Найдено 1 ошибок при анализе. Ожидалось выражение. (near "set" at position 7) Link to post Share on other sites
balboa 33 Posted October 13, 2016 Author Report Share Posted October 13, 2016 Забыли указать имя произвольного поля: update set 'wp_postmeta' = replace('meta_value','Null','new text') WHERE 'meta_key' = 'price';P.S. UPDATE wp_postmeta SET meta_key = REPLACE (meta_key, 'Null', 'new text') - так вы обновили имя пользовательского поля с Null на new text Тут не просто замена а скорее запись. Т.е значение Null это пустота. Link to post Share on other sites
Модератор files 2843 Posted October 13, 2016 Модератор Report Share Posted October 13, 2016 Найдено 1 ошибок при анализе. Ожидалось выражение. (near "set" at position 7) Используйте SQL запрос находясь в wp_postmeta Link to post Share on other sites
VIP campusboy 912 Posted October 13, 2016 VIP Report Share Posted October 13, 2016 Моё решение такое: UPDATE `wp_postmeta` SET `meta_value` = 'Текст' WHERE `meta_value` IS NULL balboa 1 Link to post Share on other sites
balboa 33 Posted October 13, 2016 Author Report Share Posted October 13, 2016 Моё решение такое: UPDATE `wp_postmeta` SET `meta_value` = 'Текст' WHERE `meta_value` IS NULL Сработало. Спасибо Link to post Share on other sites
VIP campusboy 912 Posted October 13, 2016 VIP Report Share Posted October 13, 2016 P.S. UPDATE wp_postmeta SET meta_key = REPLACE (meta_key, 'Null', 'new text') - так вы обновили имя пользовательского поля с Null на new text Это не будет работать, ты говоришь найти текст NULL и замени на текст new_text. Но null это не текст, это отсутствие вообще какого-либо значения. Поэтому в данном случае вроде бы прописал просто NULL без кавычек и должно работать, но нет! Функция REPLACE является строковой, то есть она берет значение поля, ищет в ней указанный текст и меняет на другой текст. Но возвращаемся чуть назад - NULL не текст, это даже не пустая строка, это отсутствие значения, вакуум, потому данный запрос сработает без ошибок, но вот только никаких изменений не сделает. UPDATE `wp_postmeta` SET `meta_value` = REPLACE (`meta_value`, NULL, 'new text'); Затронуто строк: 0 Найденные строки: 0 Предупреждения: 0 Длительность 1 запрос: 0,000 sec. Link to post Share on other sites
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now