MSFT SQL Server - MS SQL 2012 - вывести список таблиц отсортированных по размеру
-
__sa__nya
MSFT SQL Server - MS SQL 2012 - вывести список таблиц отсортированных по размеру
Доброе время суток. Нужно вывести список таблиц для БД отсортированных по размеру. В SQL Server Management Studio ничего подобного не нашел. Подскажите как это реализовать запросами.
-
Arkalik
Re: MSFT SQL Server - MS SQL 2012 - вывести список таблиц отсортированных по размеру
__sa__nya, Сортировка выполняется с командой ORDER BY:
Код:
Код:
Код: Выделить всё
SELECT * FROM Имя_таблицы ORDER BY Имя_атрибута (ASC - по возрастанию, DESC - по убыванию)-
__sa__nya
Re: MSFT SQL Server - MS SQL 2012 - вывести список таблиц отсортированных по размеру
Arkalik, по-моему ваш запрос выводит данные из таблицы, а мне нужно вывести список таблиц из Базы Данных .
-
lxa85
Re: MSFT SQL Server - MS SQL 2012 - вывести список таблиц отсортированных по размеру
__sa__nya, может
Код:
эта статья
на Хабре вам поможет?Статья на MS View a List of Databases on an Instance of SQL Server
Код:
Код: Выделить всё
USE AdventureWorks2012;
GO
SELECT name, database_id, create_date
FROM sys.databases ;
GO-
__sa__nya
Re: MSFT SQL Server - MS SQL 2012 - вывести список таблиц отсортированных по размеру
lxa85, код который вы привели, выводит список всех БД, мне нужно список таблиц из конкретной БД, отсортированных по размеру. Об этом говорится в статье на MS которую вы привели:
Цитата:
This example returns a list of databases on the instance of SQL Server. The list includes the names of the databases, their database IDs, and the dates when the databases were created.
В статье на Хабре информации много (количество записей в таблице, недокументированная функция sp_msForEachTable, получение количества записей из кластерного индекса, операции с кучами) , но по моему вопросу ничего нет.
В общем вопрос открыт и актуален.
Цитата:
This example returns a list of databases on the instance of SQL Server. The list includes the names of the databases, their database IDs, and the dates when the databases were created.
В статье на Хабре информации много (количество записей в таблице, недокументированная функция sp_msForEachTable, получение количества записей из кластерного индекса, операции с кучами) , но по моему вопросу ничего нет.
В общем вопрос открыт и актуален.
-
User001
Re: MSFT SQL Server - MS SQL 2012 - вывести список таблиц отсортированных по размеру
Цитата __sa__nya:
мне нужно список таблиц из конкретной БД, отсортированных по размеру
мне нужно список таблиц из конкретной БД, отсортированных по размеру
MSFT SQL Server - MS SQL 2012 - вывести список таблиц отсортированных по размеру
Пример
к MS SQL 2005 - не подходит?-
lxa85
Re: MSFT SQL Server - MS SQL 2012 - вывести список таблиц отсортированных по размеру
__sa__nya, ok, Google
Цитата:
SELECT name FROM dbo.sysobjects where xtype = 'U' order by name
Вам бы посмотреть, какие данные вы можете получить из системных таблиц MS SQL (
Там масса всего интересного.
Код:
Код:
Как в MS SQL получить список всех таблиц
Цитата:
SELECT name FROM dbo.sysobjects where xtype = 'U' order by name
Вам бы посмотреть, какие данные вы можете получить из системных таблиц MS SQL (
sys.objects
и др.Там масса всего интересного.
how-do-i-get-list-of-all-tables-in-a-database-using-tsql
Код:
Код: Выделить всё
SELECT * FROM information_schema.tablesКод:
Код: Выделить всё
SELECT sobjects.name
FROM sysobjects sobjects
WHERE sobjects.xtype = 'U'-
Ink0gnit0
Re: MSFT SQL Server - MS SQL 2012 - вывести список таблиц отсортированных по размеру
__sa__nya,
Код:
MS SQL 2005
Код:
Код: Выделить всё
USE ;
CREATE TABLE #TableState (
name varchar(255),
[rows] int,
reserved varchar(255),
data varchar(255),
index_size varchar(255),
unused varchar(255))
EXEC sp_msforeachtable @command1="INSERT INTO #TableState EXEC sp_spaceused [?]"
SELECT
name,
rows,
CONVERT(bigint, REPLACE(reserved, 'KB', '')) reserved_KB,
CONVERT(bigint, REPLACE(data, 'KB', '')) data_KB,
CONVERT(bigint, REPLACE(index_size, 'KB', '')) index_size_KB,
CONVERT(bigint, REPLACE(unused, 'KB', '')) unused_KB
FROM #TableState
ORDER BY data_kb DESC
DROP TABLE #TableStateMS SQL 2005