sidorenkov

Answer #6

Aug 3rd, 2021
2,021
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. Таблица "Покупки"  
  2. purchase_id
  3. user_id    
  4. site_id
  5. purchase_datetime
  6.  
  7. Таблица "Сайты"
  8. site_id
  9. name (строка)
  10.  
  11. Таблица "Цены"
  12. price_id
  13. site_id
  14. price_start_date (дата, с которой начинает действовать эта цена)
  15. price
  16.  
  17. 1. Перечислите, пожалуйста, поля новой таблицы
  18. Я добавил первичные ключи для покупок и цен. Надеюсь, они подразумевались в неявном виде.
  19. Таблица "Статистика"
  20. user_id
  21. purchase_id
  22. price_id
  23. site_id
  24.  
  25. 2. Как называется подобный подход? В чём его плюсы и минусы?
  26. Из тех таблиц, что есть сейчас - можно получить всю необходимую информацию для статистики.
  27. JOIN - дорогая операция. Для получения статистики без джоинов нам не хватает только явной цены в покупках.
  28. Это называется денормализация базы данных.
  29. Из плюсов: Не нужно джойнить. Быстрее для чтения (как раз для статистики).
  30. Из минусов: Появляется избыточность.
  31.  
RAW Paste Data