Cytat(riczlogan @ 17.05.2012, 08:49:09 )

A w jaki sposób mogę kolumnę tagi z News przenieść do nowej tabeli tagi_news tak żeby mieć tam id_newsa id_tagu. Można to jakoś zautomatyzować? Mógłbym prosić o jakieś ogólne "kroki" ?
CREATE TABLE tagi_news SELECT id AS id_newsa, tagi AS id_tagu FROM News
Z tym, że w Twojej tabeli "News" kolumna "tagi" przechowuje kilka tagów a najlepiej by było gdyby nowa tabela "tagi_news" przechowywała tylko jeden identyfikator tagu. Czyli, że trzeba by było zastosować regex na kolumnie "tagi", czego samym SQLem nie zrobisz. Piszę "samym" bo można zastosować jakąś bibliotekę do obsługi wyrażeń regularnych w MySQLu, np.
LIB_MYSQLUDF_PREG. To jednak wymaga nieco większej niż podstawowa znajomości SQLa.
Żeby osiągnąć zamierzony efekt (czyli jeden id newsa - jeden id tagu) bez zaawansowanej wiedzy, musiałbyś wykorzystać PHP.
$newsy_tagi[$row['id']] = explode(',', $row['tagi']); }
mysql_query("CREATE TABLE tagi_news (id_newsa int(11) NULL, id_tagu int(11) NULL)");
foreach($newsy_tagi as $id_newsa => $tagi)
foreach($tagi as $id_tagu)
mysql_query("INSERT INTO tagi_news (id_newsa, id_tagu) VALUES ('$id_newsa', '$id_tagu')");