-
Вебмастеру
(
http://forum.oszone.net/forumdisplay.php?f=22)
- -
Каталог
(
http://forum.oszone.net/showthread.php?t=71108)
sadoz1 |
11-09-2006 02:51 483256 |
Каталог
Столкнулся с задачей: необходимо создать каталог баров. На странице должна быть возможность выбора бара на определенную букву (А Б В Г Д) и т. д. (как здесь: http://www.zachot.ru). Ломаю голову над тем как лучше создать запрос к базе? Может быть кто сталкивался с подобной задачей?
|
а в чем проблема и сложность?
|
sadoz1 |
11-09-2006 12:51 483442 |
Я не совсем понимаю как сделать запрос к базе... Т.е. как сделать выбор по нужной букве?
|
Prisoner |
11-09-2006 13:21 483451 |
А Вам сначала надо разобраться в организации имеющейся БД (если она имеется) или же создать новую со структурой отвечающей требованиям задачи. Таким образом дело касается вопросов синтеза БД, знакомства с SQL и особенностями реальной БД с которой собираетесь вести работу. К сожалению данные вопросы носят чисто теоретический характер и требуют индивидуального внимания к ним со стороны их задающего т.е. Вас. Рекомендую обратиться к документации которой в Сети более чем достаточно. Это будет максимально эффективный способ - "хочешь что-то сделать - сделай сам".
|
sadoz1,
Ну и что в этом сложного? Простой вариант: Создаем таблицу с буквами, А в таблице с барами добавляем ячейку (что-то типа letter_id) ссылающуюся на букву к которой будет принадлежать бар. Вуаля!
|
sadoz1 |
11-09-2006 13:44 483465 |
База проектируется с нуля. Естественно первым делом я задумался над тем как организовать вывод. Самым простым, на мой взгляд, решением было добавить еще одно поле в таблицу. Но решение мне не нравится свой не эффективностью. При добавлении новых названий придется прописывать еще и информацию о начальной букве названия. Меня интересовало, если какой-то вариант запроса SQL предлагающий более простое и эффективное решение.
|
sadoz1,
Цитата:
Но решение мне не нравится свой не эффективностью.
|
Стандартное решение вполне нормальное.
Можно попробовать сформировать по первой букве названия (при условии что там не будет ничего кроме букв) тогда без никакиз дополнительных полей.
Код:
SELECT LEFT(name,1) AS letter FROM `bars` group by letter ORDER BY letter
|
Vlad Drakula |
24-09-2006 00:17 488732 |
а почему просто не использоватьнеь запрос с оператором like ?
|
E-mail |
24-09-2006 03:46 488770 |
а какая бд то?
|
Время: 09:23.
© OSzone.net 2001-