Cotonti / Open Source PHP Content Management FrameworkContent Management Framework

Foren / National / Russian / Тех. поддержка / Как удалить теги?

ErsteVorherige12

Как удалить теги из базы, все и сразу?

Dayver
#16 24. März 2011, 09:26

Сорри, поправил код выше - попробуй так.

Pavel Tkachenko aka Dayver. Гик и веб мастер который делает сайты, увлекается электроникой и очень любит смотреть кино.
О себе: Я злой и страшный серый волк, я в поросятах знааааюююю толк

Dieser Beitrag wurde von Dayver (am 24. März 2011, 09:27, vor 11 Jahre) bearbeitet
jcrush
#17 24. März 2011, 10:39

 

Fatal error : SQL error : Table '123.sed_tag' doesn't exist

SEO блог: http://blog.stfw.ru/
Dayver
#18 24. März 2011, 13:14

smiley и как ты думаешь в чем ошибка?

Pavel Tkachenko aka Dayver. Гик и веб мастер который делает сайты, увлекается электроникой и очень любит смотреть кино.
О себе: Я злой и страшный серый волк, я в поросятах знааааюююю толк
jcrush
#19 24. März 2011, 13:41

Думаю что дело в моем воспаленном мозге, но какой именно отдел мозга не понятно... =)

SEO блог: http://blog.stfw.ru/
Clever
#20 31. März 2011, 18:28

Продолжим...

Как удалить теги, страниц соответствия которых уже нет?

Trustmaster
#21 1. April 2011, 06:26

Удаляем ссылки на теги для несуществующих страниц:

DELETE sed_tag_references FROM sed_tag_references LEFT JOIN sed_pages ON sed_tag_references.tag_item = sed_pages.page_id WHERE sed_tag_references.tag_area = 'pages' AND sed_pages.page_id IS NULL;

Удаляем теги, на которые нет ссылок:

DELETE FROM sed_tags WHERE 0 = (SELECT COUNT(*) FROM sed_tag_references WHERE sed_tag_references.tag = sed_tags.tag);
May the Source be with you!

Dieser Beitrag wurde von Trustmaster (am 1. April 2011, 06:31, vor 11 Jahre) bearbeitet
jcrush
#22 1. April 2011, 07:49

а как удалить все таки теги которые юзались 2 и мене раз?

SEO блог: http://blog.stfw.ru/
Trustmaster
#23 1. April 2011, 11:09

Пробуем

DELETE FROM sed_tags WHERE (SELECT COUNT(*) FROM sed_tag_references WHERE sed_tags.tag = sed_tag_references.tag) <= 2;
DELETE FROM sed_tag_references WHERE (SELECT COUNT(*) FROM sed_tags WHERE sed_tag_references.tag = sed_tags.tag) = 0;

 

May the Source be with you!

Dieser Beitrag wurde von Trustmaster (am 2. April 2011, 08:22, vor 11 Jahre) bearbeitet
Clever
#24 1. April 2011, 18:30

Спасибо большое.

jcrush
#25 2. April 2011, 04:59

Trustmaster, Первый запрос убил 1500 значений, второй 9500, и грохнул все теги, как то не то...

SEO блог: http://blog.stfw.ru/
Trustmaster
#26 2. April 2011, 08:22

Пардон, ошибся в знаке в первом запросе. Поправил.

May the Source be with you!

ErsteVorherige12