Tipo de dados mysql optimizar

1. Quanto menor é geralmente melhor

Selecionando um tipo de intervalo mínimo não exceder

2. bastante simples

Por exemplo, a operação inteira é inferior ao custo do personagem, uma vez que o conjunto de caracteres e collation (agrupamento) para fazer a comparação mais complicada do que a comparação caráter shaping.

3. Tente evitar nula

Se a consulta contém a coluna pode ser nula, optimizado para mysql é mais difícil, porque o índice pode ser feito colunas nulos, índices e comparação do valor estatístico é mais complicado.

Mais espaço de armazenamento pode ser usado para colunas nulos no mysql também requerem um tratamento especial. Quando o índice pode ser colunas nulos, cada índice requer uma ficha byte adicional, mesmo no MYISAM pode resultar em um índice de um tamanho fixo (por exemplo, unicamente um índice de coluna inteiro) torna-se um índice de tamanho variável.

Geralmente pode ser alterado para trazer para o desempenho da coluna nulo não nulo é relativamente pequena, por isso nenhum ajuste necessário primeiro a encontrar e editar o caso no esquema existente. A menos que você tem certeza isso pode causar problemas. No entanto, se você pretende construir um índice na coluna, ele deve ser evitado projetado para ser tão colunas nulos.

Há exceções, InnoDB usar um valor separado nula armazenamento bit, tão bom para eficiência de espaço de dados esparsos. Mas isso não se aplica a myisam.

 

Tipo 4. inteiro:

tinyint (8), smallint (16), MEDIUMINT (24), int (32), bigint (64)

mysql pode especificar os tipos inteiros de largura, como int (11), para a maioria dos aplicativos não faz sentido: não limitar o âmbito de valor jurídico, mas fornece uma série de ferramentas mysql interativa (por exemplo, o cliente mysql de linha de comando) com para exibir o número de caracteres.

tipo real:

Não só para armazenar a parte fraccionada, pode ser usado bigint maior do que o número inteiro decimal armazenado. suportes mysql tanto o tipo exato, e também suporta tipo imprecisa.

flutuar e dupla, são suportados directamente cpu cálculos de ponto flutuante, que é significativamente mais rápido as operações de vírgula flutuante.

Tipo decimal exata para armazenar um decimal.

E decimal tipo de ponto flutuante pode ser precisão especificada. Para a coluna decimal, você pode especificar o número máximo de dígitos permitidos antes e depois do ponto decimal. Isto afecta o consumo de coluna espacial. mysql 5.0 e depois salvos em uma cadeia binária embalado digitais (4 bytes por memória 9 dígitos). Por exemplo, cada decimal memória (18,9) em ambos os lados de nove dígitos decimais, utilizando um total de nove bytes: dígitos antes do ponto decimal 4 bytes, o número após o ponto decimal 4 bytes, um byte em si decimal.

Existem várias maneiras de especificar as colunas desejadas precisão de ponto flutuante, o que tornaria mysql tranquilamente selecionar diferentes tipos de dados, ou os valores são armazenados na escolha. A precisão da definição é não-padrão, por isso recomendamos apenas o desenvolvimento de tipo de dados é especificado precisão.

Por causa do espaço extra e computação em cima, então você deve tentar usar dados financeiros de loja única decimais, tais como somente quando os ratos foram cálculo preciso. Na maior quantidade de dados, eles podem ser considerados em vez de bigint com decimal, a necessidade para a unidade de armazenamento de moeda pode ser multiplicado pelo múltiplo correspondente do número de bits da casa decimal.

 

Acho que você gosta

Origin www.cnblogs.com/lccsblog/p/12632145.html
Recomendado
Clasificación