База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как вывести список баз данных с их размером в МБ через SQL-запрос? › RE: Как вывести список баз данных с их размером в МБ через SQL-запрос?
 Odin — Одинэсник
Odin — ОдинэсникПривет, 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 — сортируем результаты по размеру базы данных в порядке убывания.
Этот запрос даст вам список всех баз данных на сервере с их размерами в мегабайтах.
