rusqhyazeubebgcahrcsdanlenetfifrglkadeelhuisgaitkkkylvltmknoplptrosrskslessvtrukuz

Как получить количество строк каждой таблицы БД?

Больше
6 мес. 4 нед. назад #170 от О.Коровяков
Это простой пример показывает, как можно в SQL Server получить количество строк данных, находящихся в каждой таблице БД. Список таблиц получается из information_schema.tables, на основе которого формирует динамичный запрос, который и выводит количество строк данных каждой найденной таблицы.
-- создаем таблицу в памяти, в ней будут храниться исключения
DECLARE @tbl TABLE (checked nvarchar(255));
 
-- переменная для хранения динамичного sql-запроса
DECLARE @q nvarchar(max);
SET @q = ''; -- сразу ставим пустую строку, чтобы можно было без проблем выполнять конкатенацию 
 
-- берем первую таблицу
DECLARE @table nvarchar(255);
SELECT TOP 1 @table = TABLE_NAME FROM information_schema.tables
 
-- цикл будет работать, пока в последнем запросе есть какие-то данные
WHILE @@ROWCOUNT > 0 BEGIN
  -- формируем запрос на получение количества данных в текущей таблице
  IF @q <> '' SET @q = @q + ', ';
  SET @q = @q + '(SELECT COUNT(*) FROM ' + @table + ') AS [' + @table + ']';
  -- добавляем таблицу в исключения, чтобы не проверять ее повторно
  INSERT INTO @tbl
  SELECT @table;
  -- берем следующую таблицу, игнорируя таблицы в списке исключений
  SELECT TOP 1 @table = TABLE_NAME FROM information_schema.tables
  WHERE TABLE_NAME NOT IN (SELECT checked FROM @tbl);
END;
 
SET @q = 'SELECT ' + @q;
 
--print @q; -- debug
 
exec(@q);

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Подпишитесь на наши новости...

Если вам интересны материалы опубликованных на Нашем сайте, Вы можете подписаться на рассылку информационных бюллетеней о новых публикациях ... Просто введите адрес электронной почты на какую Вы хотите получать Новости и нажмите кнопку "Подписаться"

Контакт Инфо

Ok-Wood.
08304 ул.Салютная,c.Гнедын,
Киевская обл, Украина
  • Тел: +39 067 492 41 24
    Tel: +38 095 095 88 60
  • Email: info@ok-wood.com.ua
  • Web: ok-wood.com.ua

Весь процесс строительства описан на страницах сайта, но более подробно о технологии, методах строительства, и всех деталях - Вы можете узнать в книге.