Forum Webscript.Ru
Общие => Базы данных => Тема начата: xavier от 31 Июля 2003, 17:19:00
-
Ситуация такая: на сайте есть разделы, в каждом разделе должны отображаться короткие фразы, допустим, tips. Сайтом пользуется не большое количество (<10) категорий пользователей. Т.о. для каждого типа пользователей и для каждого раздела сайта свои tips. [добавлено] Tips могут быть актуальны для нескольких разделов [/добавлено] Первая идея - это:
id,tip,chapters где chapters="chapter1,chapter5" Но это не есть правильно. Подскажите как правильно сделать структуру?
-
id, type (тип), chapter (текст подсказки)
Вывод случайной подсказки для type:
select * from table WHERE type = \'нужный тип\' ORDER BY RAND LIMIT 1;
-
Про случайность, это мы разберемся :)
А если подсказка актуальна в нескольких разделах? Тогда по твоему получается нужно повторять для каждого раздела.
ЗЫ
С английским я конечно не владах, но под tip я имел в виду n разг. намёк, совет; , a chapter n глава, раздел (книги) :)
-
Как понял тебя, так и написал... Раньше ничего не было сказано, что подсказка может быть для нескольких разделов. Теперь-то конечно ясно, что по другому надо...
-
Делаешь еще одну таблицу, называешь, например tip_chapter, в которой просто лежит:
tipid, chapterid
В тоблице tips:
tipid, tip
Ну и выборка, для раздела с ID=20:
select tip from tip a, chapter b where b.chapterid=\'20\' and a.tipid=b.tipid
-
Да, все довольно просто... Спасибо