powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / truncate partition in ms sql 2012
7 сообщений из 7, страница 1 из 1
truncate partition in ms sql 2012
    #39767048
Фотография НиколайСН
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый, ребят и девчат!
Лазию по форуму и никак не могу найти хотя бы примеров адекватных.
Понимаю что truncate partition в 2013 не потдерживается а имеется начиная с 2016, НО, ведь как-то же обходят эту проблему? А вот именно как - толкового не пойму, а только слова без примеров.
Так вот, подскажите на примере , плиз, кто может:

Код: sql
1.
2.
3.
4.
CREATE TABLE table1 (
   [CALENDAR_DATE] [datetime] NOT NULL,
   [TEH_OTDEL] [int] NOT NULL,
   [FACT_VALUE_NUMBER] [numeric](19, 4) NULL)



состоит эта таблица допустим из 20ккк строк, и пусть на ней висит индексы все что надо.

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
CREATE PARTITION FUNCTION [F_CALENDAR_DATE](datetime) AS RANGE LEFT FOR VALUES (N'2016-01-01T00:00:00', N'2017-01-01T00:00:00')

CREATE PARTITION SCHEME [S_CALENDAR_DATE] AS PARTITION [F_CALENDAR_DATE] TO ([_YEAR16], [_YEAR17])

ALTER TABLE table1 ADD  CONSTRAINT [table1_INDEX] PRIMARY KEY CLUSTERED 
(
	[CALENDAR_DATE] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [S_CALENDAR_DATE]([CALENDAR_DATE])


Вроде всё сделали на партиции, ура, и работает и всё супер, НО, вопрос в том, КАК удалить данные за конкретный год?

в 2016 версии это было бы так:
Код: sql
1.
truncate table table1 with (partitions(4))



А какой код будет в 2012 версии?

Почему именно код? я так пойму проще чем читать 100500 форумов, которые и так читаю и не понимаю)
...
Рейтинг: 0 / 0
truncate partition in ms sql 2012
    #39767050
aleks222
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
switch
...
Рейтинг: 0 / 0
truncate partition in ms sql 2012
    #39767051
Фотография НиколайСН
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Забыл, DELETE не надо, ибо повесит задачу часа на 3-5 что отвратительно)
хотелось бы быстрое выполнение
...
Рейтинг: 0 / 0
truncate partition in ms sql 2012
    #39767052
Фотография НиколайСН
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aleks222,

читал про switch, но есть пример выше, специально его написал, а какой код будет? можешь написать?
...
Рейтинг: 0 / 0
truncate partition in ms sql 2012
    #39767054
aleks222
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
НиколайСНaleks222,

читал про switch, но есть пример выше, специально его написал, а какой код будет? можешь написать?

Извини, дарагой, код я пишу за деньги.
Чти help - тама усе Ё.
...
Рейтинг: 0 / 0
truncate partition in ms sql 2012
    #39767150
Фотография a_voronin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
НиколайСН,



Создай рядом вторую таблицу с аналогичной структурой и прочитай про switch partition . Гуггл-мугл тебе в помощь

https://stackoverflow.com/questions/37239582/switch-partition-in-sql-server
http://blog.pragmaticworks.com/table-partitioning-in-sql-server-partition-switching


https://www.google.com/search?q=switch partition&rlz=1C1GCEB_ruRU832RU832&oq=switch partition&aqs=chrome..69i57j0l5.423j0j8&sourceid=chrome&ie=UTF-8
...
Рейтинг: 0 / 0
truncate partition in ms sql 2012
    #39767241
Фотография НиколайСН
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
a_voronin,

спасибо, разобрался наконец-то,

просто на примере было б более понятно, но понял смысл этого switch-а
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / truncate partition in ms sql 2012
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]