Tipo di dati bit e booleano in SQL Server

Il tipo di dati bit SQL Server è un tipo di dati numerico a 1 bit. Viene anche utilizzato come tipo di dati booleani in SQL Server. È possibile memorizzare solo 0, 1 o NULL in un tipo di dati bit. Quando viene utilizzato come tipo di dati booleani, 0 viene trattato come false e 1 come true.

Ottimizzazione dell’archiviazione della colonna Bit

Il tipo di dati bit richiede solo 1 bit di archiviazione. Ma un byte contiene 8 bit.

SQL Server ottimizza l’archiviazione delle colonne di bit unendo altre colonne di bit in un singolo byte. Se in una tabella sono presenti 8 o meno colonne di bit, SQL server le combina in 1 byte. Se ci sono da 9 colonne fino a 16 bit, le combina in 2 byte.

Tipo di dati booleani

Un tipo di dati booleano è un tipo di dati in grado di memorizzare un valore Vero o Falso. Non esiste un tipo di dati booleani separato in SQL Server. Quindi vengono utilizzati invece i tipi di dati bit. Il valore 1 è vero & 0 false

Esempi di Colonna Bit

Creazione di una Tabella con Bit o Colonna Booleana

La Query riportata di seguito viene illustrato come creare la Tabella con BIT & Boolean Colonne

1
2
3
4
5
6
7

CREARE la TABELLA testBit (
col1 PO’,
col2 PO’,
col3 PO’,
);

bit e booleano tipo di dati in SQL Server

l’Inserimento di Valori in bit/Boolean colonna

1
2
3
4
5
6
7
8
9
10
11
12

insert into testBit
(col1, col2,col3)
Values (1,0,null)
select * from testBit
——- ——- ——-
1 0 NULL

Conversione in Bit

I valori di stringa di conversione TRUE e FALSE risultano in 1 per TRUE & 0 per FALSE.

La conversione di qualsiasi altra stringa comporta un errore.

La conversione in bit promuove qualsiasi valore diverso da zero a 1.

1
2
3
4
5
6
7
8
9
10
11
12

insert into testBit
(col1, col2,col3)
values(‘TRUE’,’FALSE’,100)
select * from testBit
***Risultato
——- ——- ——-
1 0 1

la Conversione colonna di bit integer

anche se il tipo di dati bit è un numero del tipo di dati, è possibile aggiungerli. Per fare questo, utilizzare la funzione cast di conversione in intero, prima di aggiungere

1
2
3
4

select cast(col1 come int) + cast(col1 come int) + cast(col2 come int)
da testBit

Write a Comment

Il tuo indirizzo email non sarà pubblicato.