Siz iki tablo, questions ve tags arasında veri bölünmüş ve bir questions_tags katılmak tablosunu kullanarak bunları ilgili olmalıdır.
CREATE TABLE questions (
id INT UNSIGNED NOT NULL AUTO_INCREMENT,
url TEXT NOT NULL,
PRIMARY KEY (id)
);
CREATE TABLE tags (
id INT UNSIGNED NOT NULL AUTO_INCREMENT,
tag VARCHAR(255) NOT NULL,
PRIMARY KEY (id)
);
CREATE TABLE questions_tags (
question_id INT UNSIGNED NOT NULL REFERENCES questions,
tag_id INT UNSIGNED NOT NULL REFERENCES tags
);
Ben bu yüzden onu atlanır için özgün tabloda count sütun ne olduğundan emin değilim.
Eğer kullanabileceğiniz Yukarıdaki tabloları kullanarak belirli bir etiketi veya bir sorunun tüm etiketleri ile tüm soruları bulmak için katılır.
Edit
Eğer böyle bir şey olabilir her etiket için sayımını almak için:
SELECT tag,
count(*) AS c
FROM tags
GROUP BY tag;
Edit
Tüm sorular için tüm etiketleri sayıları elde etmek için bunu:
SELECT t.tag,
q.question_id,
count(*) AS c
FROM tags AS t,
questions_tags AS qt
questions AS q
WHERE t.id = qt.tag_id
AND qt.question_id = q.id
GROUP BY t.id, q.id;
Eğer belirli etiketler veya sorularınız için yalnızca sayılmasını istiyorsanız ek WHERE maddeler eklemeye.
Note: Yukarıdaki tüm SQL denenmemiştir.