Size: a a a

DBA - русскоговорящее сообщество

2021 May 06

IZ

Ilia Zviagin in DBA - русскоговорящее сообщество
Вопрос в чём?
источник

e

error_404 in DBA - русскоговорящее сообщество
А,ок. Переделаю. Спасибо
источник

ДМ

Дмитрий Мачихелян... in DBA - русскоговорящее сообщество
Не могу понять в чем проблема. Postgres
CREATE OR REPLACE VIEW referrals.vw_referrals_info
AS SELECT r.customer_id, sum(referrals_payments.amount)
from referrals.referrals as r, referral_payments as p
where r.customer_id = p.customer_id
group by r.customer_id
источник

IZ

Ilia Zviagin in DBA - русскоговорящее сообщество
Под крайней мере в view надо дать названия всем колонкам
источник

АЭ

Александр Эльдаров... in DBA - русскоговорящее сообщество
Здравствуйте. Подскажите по моделированию. Как лучше всего сделать вариацию продуктов? Допустим у нас есть продукты: Монитор и яблоко. У них есть свои специфические свойства. Будет ли хорошо в таком случаи денормализовать и для каждого типа продукта создать свою таблицу? Да,знаю есть способ сделать одну большую таблицу с properties и через many to many с таблицей product осуществить это,но этот способ не подходит так как все значения пропертей всегда будет varchar. Или можно как-то это сделать,чтобы datatype был разный?
источник

P

Petr in DBA - русскоговорящее сообщество
Для одного столбца возможен только один тип данных. Для упрощения все данные можно привести к varchary, а в дополнительном столбце хранить тип. А для ускорения пошаманить с фкнкциональными индексами.
источник

IZ

Ilia Zviagin in DBA - русскоговорящее сообщество
Создать отдельную таблицу - это не денормализация
источник

IZ

Ilia Zviagin in DBA - русскоговорящее сообщество
Либо EAV, либо применять наследование, отношения подкатегории.
источник

АЭ

Александр Эльдаров... in DBA - русскоговорящее сообщество
То есть хотите сказать,что создание отдельной таблицы для каждого вида товара не будет плохо?
источник

IZ

Ilia Zviagin in DBA - русскоговорящее сообщество
Не не не это очень грубая ошибка была бы.
источник

IZ

Ilia Zviagin in DBA - русскоговорящее сообщество
Ничем не плохо. Вообще.
Может, ты какие-то ошибки ещё сделаешь, но само по себе создание таблицы - это не денормализация.
Вообще, может ты перепутал? Это декомпозиция.
источник

АЭ

Александр Эльдаров... in DBA - русскоговорящее сообщество
Я сперва хотел сделать по наследованию. То есть иметь одну  таблицу с общими данными например:product. И уже в каждой таблице подтипа product писать product_id как pk и fk. И его специфичные свойства. Но мне сказали,что это плохо и ненормализация и т.д
источник

У

Уруруборос Иванович... in DBA - русскоговорящее сообщество
А может завести в пропертях поле дататайп и сделать не одно поле со значением а несколько?
источник

IZ

Ilia Zviagin in DBA - русскоговорящее сообщество
Идиоты...
Впрочем, ты можешь показать что там сделал, может там и правда ошибки
источник

У

Уруруборос Иванович... in DBA - русскоговорящее сообщество
А в прикладе будет запрос составляться на ходу, чтобы поставить имя нужной таблицы?
источник

У

Уруруборос Иванович... in DBA - русскоговорящее сообщество
Звучит хорошо, но тут надо подумать как приклад с этим будет работать, какие запросы слать и как.
Попытаюсь объяснить (поправьте плз, если я недопонял):
Вот допустим тебе надо надо яблоки с черенком длине сантиметра.
Чтобы запросить тебе надо будет знать название таблицы с яблоками(1) + название и тип поля(2).
Я так понимаю это ещё 2 таблицы с метаданными + всё на динамике будет работать.
источник

У

Уруруборос Иванович... in DBA - русскоговорящее сообщество
+ на каждую производную таблицу нужно будет весить индексы на конкретные поля(если нужны)
источник

АЭ

Александр Эльдаров... in DBA - русскоговорящее сообщество
источник

АЭ

Александр Эльдаров... in DBA - русскоговорящее сообщество
что-то типа такого
источник

АЭ

Александр Эльдаров... in DBA - русскоговорящее сообщество
брэнд можно и в продукт вынести
источник