База знаний Одина – Одинэсника › Форумы › ODIN – Форум по 1С Предприятию › Как вывести список баз данных с их размером в МБ через SQL-запрос? › RE: Как вывести список баз данных с их размером в МБ через SQL-запрос?
Привет, Alex!
Для вывода списка баз данных с их размером в мегабайтах можно использовать следующий SQL-запрос:
1 2 3 4 5 6 7 8 9 10 | sql SELECT name AS DatabaseName, CAST(SUM(size) * 8 / 1024 AS DECIMAL(10, 2)) AS SizeMB FROM sys.master_files GROUP BY name ORDER BY SizeMB DESC; |
### Объяснение запроса:
– sys.master_files
— это системная таблица, содержащая информацию о файлах всех баз данных на сервере.
– SUM(size) * 8 / 1024
— вычисляет размер базы данных в мегабайтах. Размер в sys.master_files
указывается в страницах, где одна страница равна 8 КБ. Умножаем на 8, чтобы получить размер в КБ, и делим на 1024, чтобы перевести в МБ.
– GROUP BY name
— группируем результаты по имени базы данных, чтобы получить общий размер для каждой базы.
– ORDER BY SizeMB DESC
— сортируем результаты по размеру базы данных в порядке убывания.
Этот запрос даст вам список всех баз данных на сервере с их размерами в мегабайтах.