Lister les tables d'un base de données en comptant les lignes
2018-01-17 15:01:07
2018-01-17 15:01:07
Voici une petite requête qui utilise les tables systèmes pour lister les tables d'un base de données, en comptant les lignes et les colonnes :
SELECT T.[name] AS 'Nom de la table' ,T.[max_column_id_used] AS 'Nombre de colonnes' ,P.[row_count] AS 'Nombre de lignes' FROM sys.tables T INNER JOIN sys.dm_db_partition_stats AS P ON P.[object_id] = T.[object_id] WHERE P.[index_id] BETWEEN 0 AND 1 AND T.[name] NOT IN ('dtproperties','sysdiagrams') ORDER BY T.[name] ASC
Échappement des caractères underscore et pourcentage dans la clause LIKE
2018-01-11 11:32:15
2018-01-11 11:32:15
Dans SQL Server, la clause LIKE permet une recherche à partir d'une expression. Le caractère "_" est utilisé comme indiquant que l'on accepte n'importe quel caractère à la place du "_".
Par exemple :
Pour échapper les caractères % et _ dans la clause LIKE, il faut les entourer de [ ]. Par exemple, 'T[_][%]A%' permettra de rechercher les chaînes commençant par 'T_%A'.
Par exemple :
SELECT * FROM MaTable WHERE MaColonne LIKE 'A_Z'
Cette requête permet de sélectionner tous les enregistrement où MaColonne commence par A, suivi de n'importe quel caractère, et ensuite Z. Donc si MaColonne = 'ABZ', il sera sélectionné, par contre si MaColonne = 'ABBZ', il ne sera pas sélectionné.Pour échapper les caractères % et _ dans la clause LIKE, il faut les entourer de [ ]. Par exemple, 'T[_][%]A%' permettra de rechercher les chaînes commençant par 'T_%A'.