2010-06-16 4 views
1

Quelle est la requête pour obtenir les 5 premiers types de données ... utilisés dans un DB par taille? blob> intRequête SQL pour obtenir le plus grand type de données dans le schéma

+0

ce ne sont pas des données de type serveur SQL, SQL Server a tinyint, smallint, int et bigint – SQLMenace

+0

@SQLMenace: Q édité ... mais qu'est-ce que la requête soit? – cruzy

+0

Pourquoi, puis-je demander? Tous les entiers ont 4 octets par exemple, varchar (200) peut avoir seulement quelques caractères dans chaque ligne, etc – gbn

Répondre

0

Les sys.types et sys.systypes ont une partie de cette information, jouer avec ces requêtes

select * 
from sys.types 

select * 
from sys.systypes 
0

Qu'en est d'essayer ce. Il utilise les tables sysobjects, syscolumns et systypes pour trouver le nom de la table, le nom de la colonne, le type et la longueur en octets. Vous pouvez sélectionner plus de champs que vous le souhaitez de syscolumns ou systypes.

SELECT 
    top 5 
    so.name as tablename, 
    sc.name as columnname, 
    st.name as typename, 
    sc.length as columnlength_bytes 
FROM 
    syscolumns sc 
INNER JOIN 
    sysobjects so 
    on sc.id = so.id 
INNER JOIN 
    systypes st 
    on sc.xtype = st.xtype 
WHERE 
    so.xtype = 'U' 
ORDER BY 
    sc.length desc 
Questions connexes