Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 создание таблицы  [new]
I3axoo
Member

Откуда:
Сообщений: 41
Как создать таблицу с определенным количеством столбцов ? Пример...сколько дней в этом месяце столько и столбцов .
Количество дней выцепил set @c = (SELECT DAY(DATEADD(Month, 1, @Date) - DAY(DATEADD(Month, 1, @Date)))) , а вот как реализовать создание таблицы ?
16 янв 12, 14:13    [11910923]     Ответить | Цитировать Сообщить модератору
 Re: создание таблицы  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
Написать соответствующую команду create table.
16 янв 12, 14:16    [11910951]     Ответить | Цитировать Сообщить модератору
 Re: создание таблицы  [new]
I3axoo
Member

Откуда:
Сообщений: 41
Гавриленко Сергей Алексеевич, я понимаю, но подскажите сам скрипт..я не знаю как реализовать
16 янв 12, 14:17    [11910961]     Ответить | Цитировать Сообщить модератору
 Re: создание таблицы  [new]
SomewhereSomehow
Member

Откуда: Moscow
Сообщений: 2480
Блог
I3axoo,

declare @Date datetime, @days int;
set @date = '20110201';
set @days = (SELECT DAY(DATEADD(Month, 1, @Date) - DAY(DATEADD(Month, 1, @Date))));
declare @sql nvarchar(max);
set @sql = N'create table dbo.MyTable(col1 int';
with t
as
(
	select top(@days) d = row_number() over(order by (select null)) from master..spt_values
)
select @sql = @sql + ', col'+convert(varchar(2),d)+' int' from t where t.d > 1;
set @sql = @sql + ');';
print @sql;
--exec (@sql);

п.с.
порядок колонок не гарантируется.
16 янв 12, 14:31    [11911058]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить