Ist es möglich, eine Liste von Daten zu definieren (zum Beispiel: 19122016, 26122016, 01012017, 08012017), die jede Kombination von Daten (wie: [19122016, 08012017]) ausgewählt wird 'first_date' und 'secound_date' um Skript auszuführen?Liste der Daten, die in einem Skript verwendet werden können
declare @last_date varchar(10), @previous_date varchar(10), @sql varchar(max);
set @last_date ='20170115';
set @previous_date = '20170108';
set @sql = 'select *
into umkp.dbp.rosk_'[email protected]_date+'_seg
from umkp.dbp.rosk_'[email protected]_date+'_seg'
Und als Ergebnis wäre eine Liste von Tabellen erstellt.
Warum machst du das, anstatt einfach die Tabelle zu partitionieren? Oder zumindest eine "UNION" -Abfrage über alle Tabellen verwenden? Das Optimierungsprogramm durchsucht nur dann die richtige Tabelle, wenn eine Einschränkung für die Datumstabelle vorliegt. Partitionieren ist jedoch viel einfacher. Es ist in allen Editionen mit 2016 SP1 verfügbar ([sogar Express und LocalDb]) (https://blogs.msdn.microsoft.com/sqlreleaseservices/sql-server-2016-service-pack-1-sp1-released/)) –
Eigentlich Ich brauche keine Tabellenpartitionierung. Ich habe einige (in ihrem Namen) Datenbanken, die eine Quelle für ein Skript sind, um neue Tabellen mit Berechnungen zu erstellen, die auf jeder Kombination von Datumsbereichen basieren. Sorry, vielleicht verstehe ich nicht, was du meinst, ich bin ein Anfänger mit SQL-Server :( –
Es ist sehr unklar für mich, was Sie fragen - Sie scheinen Klon-Tabellen zu sein. Auch wie kommst du zu einer Kombination (pairing?) von [19122016, 08012017] und warum wird diese Kombination nicht in die Abfrage mitgenommen? –