Задавайте вопросы, мы ответим
Вы не зашли.
Страниц: 1
Есть несколько таблиц:
`cats` ( `cid` `catname’)
`city` (`gid` `gorod` )
`kerlas` ( `kid `cid `subcid` `gid` )
`kerlas_props` ( `kid` `pid `vid)
`props` ( `pid` `subcid` `propname` `p_type )
`props_val` ( `vid `pid` ‘val’ )
`sub_props` (`sub_pid``vid``sub)
`subcats` ( `subcid `cid `subcatname`)
В kerlas – хранятся объявления
Запрос:
Отредактированно Max23 (09.02.2010 15:20:13)
Неактивен
С такой организацией данных — только через самообъединение:
FROM kerlas k1, kerlas k2, …
WHERE (условие k1 => год) AND (условие k2 => автомат) AND (k1.kid = k2.kid).
Но, кажется, организация данных очень неудачная, куда лучше сделать
кучу полей в одной таблице: все равно же в код зашиваете эти pid. В
результате, читаемость кода нулевая, и код неподдерживаемый.
Неактивен
Спасибо за ответ.
paulus написал:
С такой организацией данных — только через самообъединение:
FROM kerlas k1, kerlas k2, …
WHERE (условие k1 => год) AND (условие k2 => автомат) AND (k1.kid = k2.kid).
Я так понимаю в моём случае
FROM kerlas_props k1, kerlas_props k2, …
WHERE (условие k1 => год) AND (условие k2 => автомат) AND (k1.kid = k2.kid).
То есть объединить 1,2,3,4,n раз (k1 k2 k3 kn) столько сколько у меня параметров ?
paulus написал:
Но, кажется, организация данных очень неудачная, куда лучше сделать
кучу полей в одной таблице: все равно же в код зашиваете эти pid. В
результате, читаемость кода нулевая, и код неподдерживаемый.
согласен, что организация не очень удачная, но сделать кучу полей не могу. У меня примерно 700 таких вот свойств для разных категорий товаров.
Отредактированно Max23 (09.02.2010 19:59:16)
Неактивен
Ого, но заполняются наверняка 1-2. Может, сделать разные таблички просто?
Обобщение — не всегда очень хорошая штука.
А так — да, прийдется для каждого параметра из выборки делать самообъединение.
Неактивен
Ого, но заполняются наверняка 1-2.
Для каждого вида товаров свои свойства. Для авто таких свойств 7, а для сотовых телефонов 1
Я не совсем понял как я могу сделать разные таблички, но и времени на это уже нет .. хотя есть чистый интерес как тут можно сделать по-другому.
Большое спасибо за Ваш совет, с само объединением всё отлично работает!
Неактивен
Ну, разные таблички == auto (prop1, ... prop7), cellular (prop1), ...
Неактивен
я понял, у меня 52 под категории товаров, соответственно нужно 52 таблички ...но в этом случае , если понадобится добавить свойство, нужно будет добавлять его в саму таблицу. Думаю этот вариант предпочтительнее если не предполагается изменение структуры свойств под категорий да и самих под категорий.
Неактивен
Страниц: 1