Mysql
 sql >> база данни >  >> RDS >> Mysql

По-ефективно е да имате повече колони или повече редове?

По принцип mysql има променлива дължина на ред, стига да не се промени на ниво на таблица. По този начин празните колони няма да използват никакво място (е, почти).

Но с блобове или текстови колони може да е по-добре да ги нормализирате, тъй като те може да имат големи данни за съхранение и това трябва да се чете/пропуска всеки път, когато се сканира таблица. Дори ако колоната не е в набора от резултати и правите заявки извън индекс, ще отнеме време за голямо количество редове.

Като добра практика мисля, че ще бъде бързо да се съберат всички административни и често използвани col в една таблица и да се нормализират всички останали. Един вид "вертикален" дизайн, както във втория ви пример, ще бъде сложен за четене и веднага щом работите с временни таблици, рано или късно ще се сблъскате с проблеми с производителността.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. използвайки CASE в клаузата WHERE

  2. Как да изпълним mysqldump без подкана за парола?

  3. Как да получите категоричните стойности, свързани с потребителя?

  4. Как да направя справка с родителска таблица в присъединяване с множество таблици?

  5. Как мога да дешифрирам MySQL пароли