Diferencia de velocidad entre definir índice sobre varchar o nvarchar????

07/10/2003 - 23:43 por cg | Informe spam
Tengo unas tablas de 1.000.000 registros y hay unos
campos de tipo nvarchar de 30, que lo defino como
nvarchar por las dudas que alguna vez me venga un
caracter raro para no tener problemas, pero que
tranquilamente lo podría poner como varchar. Este campo
lo uso para hacer joins con otras tablas (aunque estas
tablas No son tan grandes)
La pregunta es existiría una diferencia apreciable entre
definir estos campos de tipo varchar en vez de nvarchar
(con lo que ocuparían la mitad)??????
Me gustaría que estos campos sean numéricos para que sea
mucho más rápido (pues son identificadores) pero esto es
imposible...
A su vez, hay mucha diferencia entre que sean caracter de
30 por ej. y de tipo numérico para hacer join y demás.
Tienen alguna estadística de esto???
 

Leer las respuestas

#1 Gustavo Larriera [MVP]
08/10/2003 - 04:30 | Informe spam
Los joins mejorarán la performance si los campos fueran de tipo CHAR. Los
campos de caracteres de largo variable (VARCHAR) y los campos UNICODE
(NCHAR, NVARCHAR, etc.) comparan menos eficazmente.

Tambien ayuda que el ancho de los campos sea lo más corto posible.

La comparación entre números es de muy buena performance.

saludos
gux
Gustavo Larriera, MSFT MVP-SQL
Uruguay LatAm

***IMPORTANTE*** Microsoft Security Bulletin MS03-039
http://www.microsoft.com/security/s...03-039.asp

This message is provided "AS IS" with no warranties expressed or implied,
and confers no rights.


"cg" wrote in message
news:0f7301c38d1c$0022b0a0$
Tengo unas tablas de 1.000.000 registros y hay unos
campos de tipo nvarchar de 30, que lo defino como
nvarchar por las dudas que alguna vez me venga un
caracter raro para no tener problemas, pero que
tranquilamente lo podría poner como varchar. Este campo
lo uso para hacer joins con otras tablas (aunque estas
tablas No son tan grandes)
La pregunta es existiría una diferencia apreciable entre
definir estos campos de tipo varchar en vez de nvarchar
(con lo que ocuparían la mitad)??????
Me gustaría que estos campos sean numéricos para que sea
mucho más rápido (pues son identificadores) pero esto es
imposible...
A su vez, hay mucha diferencia entre que sean caracter de
30 por ej. y de tipo numérico para hacer join y demás.
Tienen alguna estadística de esto???

Preguntas similares