<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://africadotnet.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Databse Engines</title><link>http://africadotnet.com/forums/27.aspx</link><description>SQL Server, Oracle, MySQL, Sybase</description><dc:language>en</dc:language><generator>CommunityServer 2008.5 SP1 (Build: 31106.3070)</generator><item><title>Re: SQL Server partitioning</title><link>http://africadotnet.com/forums/thread/68.aspx</link><pubDate>Thu, 21 May 2009 05:47:00 GMT</pubDate><guid isPermaLink="false">bb2961d9-8183-4757-8f93-8f5e67e8c13b:68</guid><dc:creator>Stephen Ebichondo</dc:creator><slash:comments>0</slash:comments><comments>http://africadotnet.com/forums/thread/68.aspx</comments><wfw:commentRss>http://africadotnet.com/forums/commentrss.aspx?SectionID=27&amp;PostID=68</wfw:commentRss><description>&lt;p&gt;This month&amp;#39;s edition of SQL Magazine also makes an interesting read &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;here it is for y&amp;#39;all &lt;/p&gt;
&lt;p&gt;






 
  Normal
  0
  
  
  false
  false
  false
  
   
   
   
   
   
  
  MicrosoftInternetExplorer4
 

 
 









&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:22pt;font-family:GillSansStd-Light;"&gt;Manage large tables by dividing them
into&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:22pt;font-family:GillSansStd-Light;"&gt;discreet,
non-overlapping sections&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;Fact tables tend to grow
very large, very fast. Sometimes, a fact table can become so large that it can
be difficult to manage, and SQL queries can be adversely affected by the sheer
size of the data set involved. However, you can horizontally partition a fact
table to make it easier to work with. A horizontally partitioned table is one
in which the rows are divided into discreet, non-overlapping sections. Each
section in a horizontally partitioned table is defined by a range of values,
such as by date, geographic area, or customers&amp;rsquo; last names. (Note: You might
consider storing each section on a different hard&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;disk to enhance query
performance.) Although it isn&amp;rsquo;t difficult to horizontally partition a table, it
does require&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;some advance planning
because you&amp;rsquo;re dealing with large amounts of data. Let&amp;rsquo;s explore when and why&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;you&amp;rsquo;d want to
horizontally partition a fact table, and how to create a partition function, a
partition scheme,&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;and a partitioned table
using SQL Server 2005&amp;rsquo;s built-in functionality.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-size:11pt;font-family:GillSansStd-ExtraBold;color:#049096;"&gt;Why Partition a
Fact Table?&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;Large tables (i.e.,
tables with hundreds of millions of rows) can be difficult to manage because of
their&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;size and the amount of
time it takes to do anything with them (e.g., rebuild an index). In a
transactional&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;database, the
associative tables (i.e., those tables that involve the many to
many&amp;mdash;M:N&amp;mdash;relationship) are&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;often the tables with
the most rows in the database. In dimensional modeling, a fact table is the
equivalent&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;of an associative
table. Like an associative table in a transactional database, a fact table
often has many&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;more rows than its
related dimensions, perhaps even as many as (# of rows in dimension 1) x (# of
rows in&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;dimension 2) &amp;hellip; x (# of
rows in dimension &lt;/span&gt;&lt;i&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd-Italic;color:black;"&gt;n&lt;/span&gt;&lt;/i&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;)
rows. Partitioning breaks these monster tables into manageable&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;chunks. If your
maintenance time windows are shrinking or the amount of data to be processed is
growing, you can partition the table and perform &lt;/span&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;"&gt;tasks, such as backup and restore operations or use the
Database Contingency Checker (DBCC) to update table statistics, by partition
instead of for the entire table. SQL Server 2005 treats the many sections of a partitioned
table as a single logical entity, and the multiple partitions appear as a
single table to end users. The following are some reasons to horizontally&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;"&gt;partition a table:&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;"&gt;&amp;bull; You can better control where each
partition is placed in storage and leverage multiple read/write heads for fast
query resolution.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;"&gt;&amp;bull; You can back up and restore by
partition, indexes can be rebuilt and reorganized by partition, and the indexes
themselves can be partitioned.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;"&gt;&amp;bull; You can direct queries that
include a WHERE clause that contains either the partitioning column or an
indexed column to the appropriate partition&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;"&gt;for resolution.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;"&gt;&amp;bull; You can reduce lock escalations
and lock-management overhead because locking is limited to&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;"&gt;partitions.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;"&gt;&amp;bull; You can merge or split partitions
fairly easily if multiple partitions are in the same file group.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;"&gt;So which tables are the best
candidates for horizontal partitioning? Very large tables, tables that you
expect to grow very large in the near future, and tables that can be intuitively
partitioned based on their business value (e.g.,by fiscal year). These tables
must include a column whose values are NOT NULL and that can be used to divide the
rows into discreet, non-overlapping sections such as a column containing sales
dates.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;"&gt;If your database contains a large
table against which queries and updates aren&amp;rsquo;t performing the way&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;"&gt;you think they should, consider
testing how partitioning might affect query performance in your environment.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;"&gt;SQL Server 2005 is partition-aware,
meaning that if slow-running queries include a WHERE clause&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;"&gt;that contains
the partitioning column or the indexed &lt;span style="color:black;"&gt;column (and
the index is also partitioned), only the relevant partition is accessed for
query resolution. This functionality can significantly help performance.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-size:11pt;font-family:GillSansStd-ExtraBold;color:#049096;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-size:11pt;font-family:GillSansStd-ExtraBold;color:#049096;"&gt;Creating a Partition
Function&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;To partition a table,
you need to use a function that&amp;rsquo;s composed of a partitioning column and a set
of &lt;span&gt;&amp;nbsp;&lt;/span&gt;boundaries. To createthe partition
function for the SALES fact table you&amp;rsquo;d run the command&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-left:0.5in;"&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-left:0.5in;"&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;CREATE PARTITION FUNCTION&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-left:0.5in;"&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;MyPartitionFunctionLeft&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-left:0.5in;"&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;(datetime)&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-left:0.5in;"&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;AS RANGE LEFT&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-left:0.5in;"&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;FOR VALUES (&amp;lsquo;1/01/2003&amp;rsquo;,&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-left:0.5in;"&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;&amp;lsquo;1/01/2005&amp;rsquo;, &amp;lsquo;1/01/2007)&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;MyPartitionFunctionLeft
is the name of the partitioning function, (datetime) is the data type of the partitioning
column, and RANGE LEFT stipulates how to divide up the data values that are
bound by the FOR VALUES dates. &lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;There&amp;rsquo;s two ways to set
the boundaries: RANGE LEFT or RANGE RIGHT. The RANGE LEFT clause divides the
data from the lowest value to the highest value (i.e., in ascending order). The
RANGE RIGHT clause&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;divides the data from
the highest value to the lowest value (i.e., in descending order). The
partitioning column is often a datetime data type such as the Date_of_Event
column (shown in Figure 1).&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;Separating datetime
records into non-overlapping groups is straightforward. For example, if your
business rules and known operational queries indicate that partitioning the
table on the date of a sales event is reasonable, then you could partition the
data into two-year groupings, as I did in the previous partition function
command. Partitioning RANGE LEFT divides the data into the value ranges. If the
date of a sales event was June 23, 2004, you&amp;rsquo;d find that record in partition 2
(P2). If you want to create the partition function with the RANGE RIGHT clause,
you&amp;rsquo;d run the command &lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-left:0.5in;"&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;CREATE PARTITION FUNCTION&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-left:0.5in;"&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;MyPartitionFunction datetime&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-left:0.5in;"&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;AS RANGE RIGHT&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-left:0.5in;"&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;FOR VALUES (&amp;lsquo;1/01/2003&amp;rsquo;,&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-left:0.5in;"&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;&amp;lsquo;1/01/2005&amp;rsquo;, &amp;lsquo;1/01/2007)&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;Partioning RANGE RIGHT
divides the data into the valve ranges shown in Figure 3. I recommend, for the&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;sake of consistency and
for the ease of querying, that you choose one range declaration (i.e., RANGE LEFT&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;or RANGE RIGHT) and
stick with it throughout all the partitioned tables that you create in your environment.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;Each range of values in
a partition is restricted by boundaries that are specified in the FOR VALUES clause.
Note that if you&amp;rsquo;re using datetime data types for boundary values and your
company has an office in&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;Europe&lt;/span&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;, you&amp;rsquo;ll have to decide
on an international standard for datetime, so that it&amp;rsquo;s uniform across your
company. SQL Server assumes that &lt;/span&gt;&lt;i&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd-Italic;color:black;"&gt;us_english &lt;/span&gt;&lt;/i&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;is the default language
for the session, so if that&amp;rsquo;s not the case, you&amp;rsquo;ll want to create a
user-defined function (UDF) that will convert various date formats into &lt;/span&gt;&lt;i&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd-Italic;color:black;"&gt;us_english&lt;/span&gt;&lt;/i&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;, and reference that
UDF in the FOR VALUES clause. You don&amp;rsquo;t have to use literals in the FOR VALUES
clause; you can reference variables, functions, and UDFs.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-size:11pt;font-family:GillSansStd-ExtraBold;color:#049096;"&gt;Creating a
Partition Scheme&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;Now that you&amp;rsquo;ve created
a partition function, you need to create a partition scheme. The partition
scheme&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;maps partitions to
various file groups, as shown in the following command:&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-left:0.5in;"&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;CREATE PARTITION SCHEME&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-left:0.5in;"&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;MyPartitionScheme&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-left:0.5in;"&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;AS MyPartitionFunction&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-left:0.5in;"&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;TO (MyFilegroup1, MyFilegroup2,&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-left:0.5in;"&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;MyFilegroup3, MyFilegroup4,&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-left:0.5in;"&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;MyFilegroup5)&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;MyPartitionScheme is
the name of the partitioning scheme, and MyPartitionFunction refers to the
partition&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;function. This command
maps the boundary values into partitions that are then assigned to one or more
file groups. Data rows with Date_of_Event datetime values prior to 1/01/03 are
assigned to MyFilegroup1.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;Rows with datetime
values greater than or equal to 1/01/03 and prior to 1/01/05 are assigned to&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;MyFilegroup2. Rows with
datetime values greater than or equal to 1/01/05 and prior to 1/01/07 are
assigned&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;to MyFilegroup3. All
other rows with datetime values greater than or equal to 1/01/07 are assigned
to&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;MyFilegroup4. For each
set of boundary values (remember, boundary values are in the FOR VALUES clause of
the partition function statement), there will be (# of boundary values + 1)
partitions. The previous&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;CREATE PARTITION SCHEME
statement includes three boundary values and four partitions. No matter&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;whether the partitions
are created RANGE RIGHT or RANGE LEFT, there will always be (# of boundary&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;values + 1) partitions,
up to 1000 partitions per table. So why are there five file groups instead of
four in this&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;example? (Remember, the
partition function statement had only three boundary values.) The fifth file
group is the optional &amp;ldquo;next-used&amp;rdquo; file group. Let&amp;rsquo;s look at how this file group
is used and how important it is in the&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;partition scheme. In
the CREATE PARTITION FUNCTION example, the last boundary value is 1/01/2007, so
records with a Date_of_Event value greater than or equal to the 1/01/2007 will
be stored in partition 4 (P4). When 1/01/2009 rolls around, you&amp;rsquo;ll have to create
a new partition to maintain the storage scheme&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;that you&amp;rsquo;ve
established. If your original CREATE PARTITION SCHEME statement didn&amp;rsquo;t include
a&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;next-used file group,
you wouldn&amp;rsquo;t be able to split P4 into P4, which will hold data from 2007
through the&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;end of 2008, and
partition 5 (P5), which will hold data from 1/01/2009 and beyond. If your
partitioning plan&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;involves periodically
creating new partitions to hold new data, as in this example, make sure you
include the&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;next-used file group in
your CREATE PARTITION SCHEME statement. You don&amp;rsquo;t have to assign one partition
to one file group, as I did in Figure 4. Instead, you can map multiple partitions
to a single file group or you can map all the partitions to one file group.
However, you can&amp;rsquo;t map one partition to multiple file groups. Creating the
partition scheme might be the most important step in the partitioning process.
In the&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;future, you might want
to combine the data from two adjacent partitions into one partition, add a
boundary&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;value to an existing
partition, or move data from a populated partition into an empty partition. To
perform&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;these operations,
you&amp;rsquo;ll want to do some advance planning and create the partition scheme so that
it will support these activities. SQL Server 2005 Books Online (BOL) provides
some good planning resources,&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;including &amp;ldquo;Planning
Guidelines for Partitioned Tables and Indexes&amp;rdquo;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;(msdn2.microsoft.com/en-us/library/ ms180767.aspx).&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-size:11pt;font-family:GillSansStd-ExtraBold;color:#049096;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-size:11pt;font-family:GillSansStd-ExtraBold;color:#049096;"&gt;Creating a
Partitioned Table&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;Creating a partitioned
table isn&amp;rsquo;t all that different from creating a regular table; you just have to
reference the&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;name of the partition
scheme in the ON clause. To do so, run the command &lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-left:0.5in;"&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;CREATE TABLE SALESFact&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-left:0.5in;"&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;(SalesFact_KEY bigint identity&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-left:0.5in;"&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;(1, 1) primary not clustered NOT&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-left:0.5in;"&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;NULL,&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-left:0.5in;"&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;&amp;hellip;&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;all
the other columns in the&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-left:0.5in;"&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;table, ending up with the&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-left:0.5in;"&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;partitioning column&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;&amp;hellip;&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;,&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-left:0.5in;"&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;Date_of_Event datetime&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-left:0.5in;"&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;NOT NULL)&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-left:0.5in;"&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;ON MyPartitionScheme
(Date_of_Event)&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-left:0.5in;"&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;By specifying the name
of a partition scheme, you&amp;rsquo;re indicating that this table is a partitioned
table. Obviously, the partition scheme and the partition function have to exist
in the database before you can create the table.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;You can combine the
data from multiple partitions into one partition. However, you can only merge
two&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;adjacent partitions at
a time, so if you&amp;rsquo;re trying to &amp;ldquo;unpartition&amp;rdquo; a table that has multiple
partitions, you&amp;rsquo;ll&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;have to repeat this
step many times. To merge two partitions, run the command&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-left:0.5in;"&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;ALTER PARTITION FUNCTION&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-left:0.5in;"&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;MyPartitionFunction()&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-left:0.5in;"&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt;MERGE&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt; RANGE&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style="font-size:9pt;font-family:DukeCode;color:black;"&gt; (&amp;lsquo;1/01/2003&amp;rsquo;)&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;This command will merge
the partitions as follows: partition 1 (P1) will merge into P2, meaning that P2
will&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;then contain all rows
with a Date_of_Event value prior to 1/01/05. Internally (i.e., in the
sys.partitions system&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;table), the partitions
will be renumbered, starting with one (not zero). P1 and P2 will become P1, P3
will&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;become P2, and P4 will
become P3. I recommend sketching out the DDL before you merge any partitions&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;because you could
potentially cripple your operations for sustained periods of time if you&amp;rsquo;re not
careful&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;when you perform these
merges. In fact, Eric Hanson, Microsoft&amp;rsquo;s lead program manager for query processing
on the SQL Server Relational Engine Team, recommends performing splits and
merges only on empty partitions, even if that means you have to temporarily empty
a partition.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;i&gt;&lt;span style="font-size:10pt;font-family:GillSansStd-BoldItalic;color:black;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-size:11pt;font-family:GillSansStd-ExtraBold;color:#049096;"&gt;Easily Manage
Monster Tables&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;SQL Server 2005&amp;rsquo;s
ability to horizontally partition a table into non-overlapping sections and
place&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;each section on a
separate partition makes it easy to manage large fact tables. Because the SQL
Server 2005 Enterprise
and Developer Editions are partitionaware, properly-written queries will access
only the&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;rows within the
relevant partition, thus running much faster than if they had to traverse the
contents of the&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size:9pt;font-family:TimesNewRomanMTStd;color:black;"&gt;entire table.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>SQL Server partitioning</title><link>http://africadotnet.com/forums/thread/66.aspx</link><pubDate>Sat, 16 May 2009 06:53:54 GMT</pubDate><guid isPermaLink="false">bb2961d9-8183-4757-8f93-8f5e67e8c13b:66</guid><dc:creator>Ben Chege</dc:creator><slash:comments>0</slash:comments><comments>http://africadotnet.com/forums/thread/66.aspx</comments><wfw:commentRss>http://africadotnet.com/forums/commentrss.aspx?SectionID=27&amp;PostID=66</wfw:commentRss><description>&lt;p&gt;







&lt;/p&gt;

 
  Normal
  0
  
  
  
  
  false
  false
  false
  
  EN-US
  X-NONE
  X-NONE
  
   
   
   
   
   
   
   
   
   
   
   
  
  MicrosoftInternetExplorer4
  
   
   
   
   
   
   
   
   
   
   
   
  

 
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
 

&lt;p&gt;

&lt;/p&gt;



&lt;p class="MsoNormal" style="line-height:normal;"&gt;&lt;span style="font-size:9pt;font-family:&amp;#39;Trebuchet MS&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;While
the feature has been available on sql server 2005, I tend to think that most
people don&amp;rsquo;t use it since when people upgrade databases they don&amp;rsquo;t look for new
features in the new version that the new version has to offer.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height:normal;"&gt;&lt;span style="font-size:9pt;font-family:&amp;#39;Trebuchet MS&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;One
of these features is partitioning tables, basically the feature enables you to
split your table into partitions for faster retrieval, a whole article is here
(http://msdn.microsoft.com/en-us/library/ms345146(SQL.90).aspx) but an overview
wouldn&amp;rsquo;t hurt.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height:normal;"&gt;&lt;span style="font-size:9pt;font-family:&amp;#39;Trebuchet MS&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;The
idea is to spit the table based on values of a certain field maybe a date or a
month if you have too much data coming into the table per day or month. The
field is called the &lt;b&gt;Partitioning Key&lt;/b&gt;,&amp;nbsp;you need to create a &lt;b&gt;Partitioning
function&lt;/b&gt; that&amp;nbsp;basically states where the data should be moved to in
ranges. Then you need to create a &lt;b&gt;Partition Scheme&lt;/b&gt; to direct the
partitions to specific &lt;b&gt;filegroups&lt;/b&gt;.
When you define a partition scheme, you must make sure to name a &lt;b&gt;filegroup&lt;/b&gt; for every partition, even if
multiple partitions will reside on the same &lt;b&gt;filegroup&lt;/b&gt;. If all partitions are to reside on the same file group
you can create the scheme on the PRIMARY &lt;b&gt;filegroup&lt;/b&gt;.
Then finally create a &lt;b&gt;table&lt;/b&gt; that
uses that &lt;b&gt;Partition Scheme&lt;/b&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height:normal;"&gt;&lt;span style="font-size:9pt;font-family:&amp;#39;Trebuchet MS&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;I
will try and do the above for a trouble ticketing system for a GSM company that
has issues left right and center.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height:normal;"&gt;&lt;b&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Trebuchet MS&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;FileGroups:&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height:normal;"&gt;&lt;span style="font-size:9pt;font-family:&amp;#39;Trebuchet MS&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;If
you want to place a partitioned table on multiple files for better I/O
balancing, you will need to create at least one filegroup. Filegroups can
consist of one or more files, and each partition must map to a filegroup. A
single filegroup can be used for multiple partitions but for better data
management, such as for more granular backup control, you should design your
partitioned tables so that only related or logically grouped data resides on
the same filegroup. Using &lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;ALTER&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:blue;"&gt;DATABASE&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:9pt;font-family:&amp;#39;Trebuchet MS&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;, you can add a
logical filegroup name, and then add files. To create a filegroup named &lt;/span&gt;&lt;span style="font-size:9pt;font-family:&amp;#39;Trebuchet MS&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;2009Q1 to 2009Q4 &lt;/span&gt;&lt;span style="font-size:9pt;font-family:&amp;#39;Trebuchet MS&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;for the &lt;/span&gt;&lt;span style="font-size:9pt;font-family:&amp;#39;Trebuchet MS&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;TroubleTickets &lt;/span&gt;&lt;span style="font-size:9pt;font-family:&amp;#39;Trebuchet MS&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;database, use &lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;ALTER&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:blue;"&gt;DATABASE&lt;/span&gt; &lt;/span&gt;&lt;span style="font-size:9pt;font-family:&amp;#39;Trebuchet MS&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;in the following way:&lt;/span&gt;&lt;span style="font-size:9pt;font-family:&amp;#39;Trebuchet MS&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height:normal;"&gt;&lt;span style="font-size:9pt;font-family:&amp;#39;Trebuchet MS&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;If
you need to add files groups to your database run the alter database commands
as seen below.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;ALTER&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:blue;"&gt;DATABASE&lt;/span&gt; TroubleTickets &lt;span style="color:blue;"&gt;ADD&lt;/span&gt;
&lt;span style="color:blue;"&gt;FILEGROUP&lt;/span&gt; [2009Q1]&lt;span style="color:gray;"&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;ALTER&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:blue;"&gt;DATABASE&lt;/span&gt; TroubleTickets &lt;span style="color:blue;"&gt;ADD&lt;/span&gt;
&lt;span style="color:blue;"&gt;FILEGROUP&lt;/span&gt; [2009Q2]&lt;span style="color:gray;"&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;ALTER&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:blue;"&gt;DATABASE&lt;/span&gt; TroubleTickets &lt;span style="color:blue;"&gt;ADD&lt;/span&gt;
&lt;span style="color:blue;"&gt;FILEGROUP&lt;/span&gt; [2009Q3]&lt;span style="color:gray;"&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;ALTER&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:blue;"&gt;DATABASE&lt;/span&gt; TroubleTickets &lt;span style="color:blue;"&gt;ADD&lt;/span&gt;
&lt;span style="color:blue;"&gt;FILEGROUP&lt;/span&gt; [2009Q4]&lt;span style="color:gray;"&gt;;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Trebuchet MS&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;ALTER&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:blue;"&gt;DATABASE&lt;/span&gt; TroubleTickets &lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;ADD&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:blue;"&gt;FILE&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;span style="color:gray;"&gt;(&lt;/span&gt;&lt;span style="color:blue;"&gt;NAME&lt;/span&gt; &lt;span style="color:gray;"&gt;=&lt;/span&gt; N&lt;span style="color:red;"&gt;&amp;#39;2009Q1&amp;#39;&lt;/span&gt;&lt;span style="color:gray;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;FILENAME&lt;/span&gt; &lt;span style="color:gray;"&gt;=&lt;/span&gt; N&lt;span style="color:red;"&gt;&amp;#39;C:\TroubleTickets\2009Q1.ndf&amp;#39;&lt;/span&gt;&lt;span style="color:gray;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;SIZE&lt;/span&gt; &lt;span style="color:gray;"&gt;=&lt;/span&gt; 2MB&lt;span style="color:gray;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;MAXSIZE&lt;/span&gt; &lt;span style="color:gray;"&gt;=&lt;/span&gt; 100MB&lt;span style="color:gray;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;FILEGROWTH&lt;/span&gt; &lt;span style="color:gray;"&gt;=&lt;/span&gt; 2MB&lt;span style="color:gray;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;TO&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:blue;"&gt;FILEGROUP&lt;/span&gt; [2009Q1]&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;ALTER&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:blue;"&gt;DATABASE&lt;/span&gt; TroubleTickets&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;ADD&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:blue;"&gt;FILE&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;span style="color:gray;"&gt;(&lt;/span&gt;&lt;span style="color:blue;"&gt;NAME&lt;/span&gt; &lt;span style="color:gray;"&gt;=&lt;/span&gt; N&lt;span style="color:red;"&gt;&amp;#39;2009Q2&amp;#39;&lt;/span&gt;&lt;span style="color:gray;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;FILENAME&lt;/span&gt; &lt;span style="color:gray;"&gt;=&lt;/span&gt; N&lt;span style="color:red;"&gt;&amp;#39;C:\TroubleTickets\2009Q2.ndf&amp;#39;&lt;/span&gt;&lt;span style="color:gray;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;SIZE&lt;/span&gt; &lt;span style="color:gray;"&gt;=&lt;/span&gt; 5MB&lt;span style="color:gray;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;MAXSIZE&lt;/span&gt; &lt;span style="color:gray;"&gt;=&lt;/span&gt; 100MB&lt;span style="color:gray;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;FILEGROWTH&lt;/span&gt; &lt;span style="color:gray;"&gt;=&lt;/span&gt; 5MB&lt;span style="color:gray;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;TO&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:blue;"&gt;FILEGROUP&lt;/span&gt; [2009Q2]&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;ALTER&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:blue;"&gt;DATABASE&lt;/span&gt; TroubleTickets&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;ADD&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:blue;"&gt;FILE&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;span style="color:gray;"&gt;(&lt;/span&gt;&lt;span style="color:blue;"&gt;NAME&lt;/span&gt; &lt;span style="color:gray;"&gt;=&lt;/span&gt; N&lt;span style="color:red;"&gt;&amp;#39;2009Q4&amp;#39;&lt;/span&gt;&lt;span style="color:gray;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;FILENAME&lt;/span&gt; &lt;span style="color:gray;"&gt;=&lt;/span&gt; N&lt;span style="color:red;"&gt;&amp;#39;C:\TroubleTickets\2009Q4.ndf&amp;#39;&lt;/span&gt;&lt;span style="color:gray;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;SIZE&lt;/span&gt; &lt;span style="color:gray;"&gt;=&lt;/span&gt; 5MB&lt;span style="color:gray;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;MAXSIZE&lt;/span&gt; &lt;span style="color:gray;"&gt;=&lt;/span&gt; 100MB&lt;span style="color:gray;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;FILEGROWTH&lt;/span&gt; &lt;span style="color:gray;"&gt;=&lt;/span&gt; 5MB&lt;span style="color:gray;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;TO&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:blue;"&gt;FILEGROUP&lt;/span&gt; [2009Q4]&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Trebuchet MS&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;&lt;br /&gt;
To create a partition function&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Trebuchet MS&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;CREATE&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:blue;"&gt;PARTITION&lt;/span&gt; &lt;span style="color:blue;"&gt;FUNCTION&lt;/span&gt; TroubleTicketRangePFN&lt;span style="color:gray;"&gt;(&lt;/span&gt;&lt;span style="color:blue;"&gt;datetime&lt;/span&gt;&lt;span style="color:gray;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;AS&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;RANGE&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:gray;"&gt;LEFT&lt;/span&gt; &lt;span style="color:blue;"&gt;FOR&lt;/span&gt; &lt;span style="color:blue;"&gt;VALUES&lt;/span&gt;&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;span style="color:gray;"&gt;(&lt;/span&gt;&lt;span style="color:red;"&gt;&amp;#39;20090101&amp;#39;&lt;/span&gt;&lt;span style="color:gray;"&gt;,&lt;/span&gt; &lt;span style="color:red;"&gt;&amp;#39;20090201&amp;#39;&lt;/span&gt;&lt;span style="color:gray;"&gt;,&lt;/span&gt; &lt;span style="color:red;"&gt;&amp;#39;20090301&amp;#39;&lt;/span&gt;&lt;span style="color:gray;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:red;"&gt;&amp;#39;20090401&amp;#39;&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:gray;"&gt;,&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:red;"&gt;&amp;#39;20090501&amp;#39;&lt;/span&gt;&lt;span style="color:gray;"&gt;,&lt;/span&gt; &lt;span style="color:red;"&gt;&amp;#39;20090601&amp;#39;&lt;/span&gt;&lt;span style="color:gray;"&gt;,&lt;/span&gt; &lt;span style="color:red;"&gt;&amp;#39;20090701&amp;#39;&lt;/span&gt;&lt;span style="color:gray;"&gt;,&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:red;"&gt;&amp;#39;20090801&amp;#39;&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:gray;"&gt;,&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:red;"&gt;&amp;#39;20090901&amp;#39;&lt;/span&gt;&lt;span style="color:gray;"&gt;,&lt;/span&gt;&lt;span style="color:red;"&gt;&amp;#39;20091001&amp;#39;&lt;/span&gt;&lt;span style="color:gray;"&gt;,&lt;/span&gt; &lt;span style="color:red;"&gt;&amp;#39;20091101&amp;#39;&lt;/span&gt;&lt;span style="color:gray;"&gt;,&lt;/span&gt; &lt;span style="color:red;"&gt;&amp;#39;20091201&amp;#39;&lt;/span&gt;&lt;span style="color:gray;"&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:12pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Trebuchet MS&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style="font-size:9pt;font-family:&amp;#39;Trebuchet MS&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;In
the CREATE PARTITION FUNCTION statement, you can specify the value criteria on
which the table will be partitioned. Specifying the LEFT argument will include
the value as the upper boundary of the first partition. Specifying the RIGHT
argument will include the first value as the lower boundary of the second
partition.&lt;br /&gt;
&lt;br /&gt;
note As&lt;br /&gt;
per the SQL Server documentation: &amp;quot;&lt;i&gt;All data types are valid for use as partitioning
columns, except text, ntext, image, xml, timestamp, varchar(max),
nvarchar(max), varbinary(max), alias data types, or CLR user-defined data types&lt;/i&gt;&amp;quot;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height:normal;"&gt;&lt;b&gt;&lt;span style="font-size:13.5pt;font-family:&amp;#39;Trebuchet MS&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;Create the Partition Scheme&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height:normal;"&gt;&lt;span style="font-size:9pt;font-family:&amp;#39;Trebuchet MS&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;Once
you have created a partition function, you must associate it with a partition
scheme to direct the partitions to specific filegroups. When you define a
partition scheme, you must make sure to name a filegroup for every partition,
even if multiple partitions will reside on the same filegroup. For the range
partition created previously (TroubleTicketRangePFN), there are 12 partitions;
the last, and empty, partition will be created in the PRIMARY filegroup. There
is no need for a special location for this partition because it will never
contain data.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;CREATE&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:blue;"&gt;PARTITION&lt;/span&gt; &lt;span style="color:blue;"&gt;SCHEME&lt;/span&gt;
TroubleTicketRangePS &lt;span style="color:blue;"&gt;AS&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;PARTITION&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;
TroubleTicketRangePFN &lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;TO&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:gray;"&gt;(&lt;/span&gt;[2009Q1]&lt;span style="color:gray;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;[2009Q1]&lt;span style="color:gray;"&gt;,&lt;/span&gt;
[2009Q1]&lt;span style="color:gray;"&gt;,&lt;/span&gt; [2009Q2]&lt;span style="color:gray;"&gt;,&lt;/span&gt;
[2009Q2]&lt;span style="color:gray;"&gt;,&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;[2009Q2]&lt;span style="color:gray;"&gt;,&lt;/span&gt; [2009Q3]&lt;span style="color:gray;"&gt;,&lt;/span&gt; [2009Q3]&lt;span style="color:gray;"&gt;,&lt;/span&gt; [2009Q3]&lt;span style="color:gray;"&gt;,&lt;/span&gt; [2009Q3]&lt;span style="color:gray;"&gt;,&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;[2009Q4]&lt;span style="color:gray;"&gt;,&lt;/span&gt; [2009Q4]&lt;span style="color:gray;"&gt;,&lt;/span&gt; [2009Q4]&lt;span style="color:gray;"&gt;,&lt;/span&gt;[PRIMARY]&lt;span style="color:gray;"&gt;);&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Trebuchet MS&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;/span&gt;&lt;span style="font-size:9pt;font-family:&amp;#39;Trebuchet MS&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;Create a table using the scheme&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Trebuchet MS&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;CREATE&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:blue;"&gt;TABLE&lt;/span&gt; [dbo]&lt;span style="color:gray;"&gt;.&lt;/span&gt;[TroubleTicket]&lt;span&gt;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:gray;"&gt;(&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;[TroubleTicketID] [bigint] &lt;span style="color:gray;"&gt;NOT&lt;/span&gt; &lt;span style="color:gray;"&gt;NULL,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;[AssighedEmployeeID] [int] &lt;span style="color:gray;"&gt;NULL,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;[TroubleTicketSummary] &lt;span style="color:blue;"&gt;VARCHAR&lt;/span&gt;&lt;span style="color:gray;"&gt;(&lt;/span&gt;255&lt;span style="color:gray;"&gt;)&lt;/span&gt; &lt;span style="color:gray;"&gt;NOT&lt;/span&gt; &lt;span style="color:gray;"&gt;NULL,&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;[CreationDate] [datetime] &lt;span style="color:gray;"&gt;NOT&lt;/span&gt; &lt;span style="color:gray;"&gt;NULL,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;[CreatedBy] [int] &lt;span style="color:gray;"&gt;NULL&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:gray;"&gt;)&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:12pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;ON&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;
TroubleTicketRangePS&lt;span style="color:gray;"&gt;(&lt;/span&gt;CreationDate&lt;span style="color:gray;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Trebuchet MS&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:12pt;line-height:normal;"&gt;&lt;span style="font-size:9pt;font-family:&amp;#39;Trebuchet MS&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;Then run a bunch of
INSERT statements to add to the table.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;INSERT&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:blue;"&gt;INTO&lt;/span&gt; [TroubleTicket] &lt;span style="color:gray;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;[TroubleTicketID]&lt;span style="color:gray;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;[AssighedEmployeeID] &lt;span style="color:gray;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;[TroubleTicketSummary]&lt;span style="color:gray;"&gt;,&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;[CreationDate] &lt;span style="color:gray;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;[CreatedBy]&lt;span style="color:gray;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;VALUES&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:gray;"&gt;(&lt;/span&gt;1&lt;span style="color:gray;"&gt;,&lt;/span&gt;1&lt;span style="color:gray;"&gt;,&lt;/span&gt;&lt;span style="color:red;"&gt;&amp;#39;TEST&amp;#39;&lt;/span&gt;&lt;span style="color:gray;"&gt;,&lt;/span&gt;&lt;span style="color:red;"&gt;&amp;#39;2009-01-16 00:00:00.000&amp;#39;&lt;/span&gt;&lt;span style="color:gray;"&gt;,&lt;/span&gt;1&lt;span style="color:gray;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:gray;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;INSERT&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:blue;"&gt;INTO&lt;/span&gt; [TroubleTicket] &lt;span style="color:gray;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;[TroubleTicketID]&lt;span style="color:gray;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;[AssighedEmployeeID] &lt;span style="color:gray;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;[TroubleTicketSummary]&lt;span style="color:gray;"&gt;,&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;[CreationDate] &lt;span style="color:gray;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;[CreatedBy]&lt;span style="color:gray;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;VALUES&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:gray;"&gt;(&lt;/span&gt;1&lt;span style="color:gray;"&gt;,&lt;/span&gt;1&lt;span style="color:gray;"&gt;,&lt;/span&gt;&lt;span style="color:red;"&gt;&amp;#39;TEST&amp;#39;&lt;/span&gt;&lt;span style="color:gray;"&gt;,&lt;/span&gt;&lt;span style="color:red;"&gt;&amp;#39;2009-04-16 00:00:00.000&amp;#39;&lt;/span&gt;&lt;span style="color:gray;"&gt;,&lt;/span&gt;1&lt;span style="color:gray;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:gray;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;INSERT&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:blue;"&gt;INTO&lt;/span&gt; [TroubleTicket] &lt;span style="color:gray;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;[TroubleTicketID]&lt;span style="color:gray;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;[AssighedEmployeeID] &lt;span style="color:gray;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;[TroubleTicketSummary]&lt;span style="color:gray;"&gt;,&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;[CreationDate] &lt;span style="color:gray;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;[CreatedBy]&lt;span style="color:gray;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;VALUES&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:gray;"&gt;(&lt;/span&gt;1&lt;span style="color:gray;"&gt;,&lt;/span&gt;1&lt;span style="color:gray;"&gt;,&lt;/span&gt;&lt;span style="color:red;"&gt;&amp;#39;TEST&amp;#39;&lt;/span&gt;&lt;span style="color:gray;"&gt;,&lt;/span&gt;&lt;span style="color:red;"&gt;&amp;#39;2009-07-16 00:00:00.000&amp;#39;&lt;/span&gt;&lt;span style="color:gray;"&gt;,&lt;/span&gt;1&lt;span style="color:gray;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:gray;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;INSERT&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:blue;"&gt;INTO&lt;/span&gt; [TroubleTicket] &lt;span style="color:gray;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;[TroubleTicketID]&lt;span style="color:gray;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;[AssighedEmployeeID] &lt;span style="color:gray;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;[TroubleTicketSummary]&lt;span style="color:gray;"&gt;,&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;[CreationDate] &lt;span style="color:gray;"&gt;,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;[CreatedBy]&lt;span style="color:gray;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:12pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;VALUES&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:gray;"&gt;(&lt;/span&gt;1&lt;span style="color:gray;"&gt;,&lt;/span&gt;1&lt;span style="color:gray;"&gt;,&lt;/span&gt;&lt;span style="color:red;"&gt;&amp;#39;TEST&amp;#39;&lt;/span&gt;&lt;span style="color:gray;"&gt;,&lt;/span&gt;&lt;span style="color:red;"&gt;&amp;#39;2009-11-16 00:00:00.000&amp;#39;&lt;/span&gt;&lt;span style="color:gray;"&gt;,&lt;/span&gt;1&lt;span style="color:gray;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Trebuchet MS&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:12pt;line-height:normal;"&gt;&lt;span style="font-size:9pt;font-family:&amp;#39;Trebuchet MS&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;To test what partition a certain
value will go to use the below statement.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:12pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;SELECT&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:fuchsia;"&gt;$PARTITION&lt;/span&gt;&lt;span style="color:gray;"&gt;.&lt;/span&gt;
TroubleTicketRangePFN &lt;span style="color:gray;"&gt;(&lt;/span&gt;&lt;span style="color:red;"&gt;&amp;#39;2009-05-16
00:00:00.000&amp;#39;&lt;/span&gt;&lt;span style="color:gray;"&gt;)&lt;/span&gt; &lt;span style="color:gray;"&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:12pt;line-height:normal;"&gt;&lt;span style="font-size:9pt;font-family:&amp;#39;Trebuchet MS&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;Or to list all the values in a certain
partition use&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;SELECT&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:gray;"&gt;*&lt;/span&gt; &lt;span style="color:blue;"&gt;FROM&lt;/span&gt;
[TroubleTicket]&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;WHERE&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:fuchsia;"&gt;$PARTITION&lt;/span&gt;&lt;span style="color:gray;"&gt;.&lt;/span&gt;TroubleTicketRangePFN&lt;span style="color:gray;"&gt;(&lt;/span&gt;CreationDate&lt;span style="color:gray;"&gt;)&lt;/span&gt; &lt;span style="color:gray;"&gt;=&lt;/span&gt; 2 &lt;span style="color:green;"&gt;-- where 2 is the
partition&amp;#39;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:12pt;line-height:normal;"&gt;&lt;span style="font-size:9pt;font-family:&amp;#39;Trebuchet MS&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;To list what partition is
in which filegroup&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;select&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; ds&lt;span style="color:gray;"&gt;.&lt;/span&gt;&lt;span style="color:blue;"&gt;name&lt;/span&gt; &lt;span style="color:blue;"&gt;AS&lt;/span&gt; [Filegroup Name]&lt;span style="color:gray;"&gt;,&lt;/span&gt;
ds&lt;span style="color:gray;"&gt;.&lt;/span&gt;&lt;span style="color:blue;"&gt;type&lt;/span&gt;&lt;span style="color:gray;"&gt;,&lt;/span&gt; destination_id &lt;span style="color:blue;"&gt;AS&lt;/span&gt;
[partition number]&lt;span style="color:gray;"&gt;,&lt;/span&gt; dds&lt;span style="color:gray;"&gt;.&lt;/span&gt;partition_scheme_id&lt;span style="color:gray;"&gt;,&lt;/span&gt; ps&lt;span style="color:gray;"&gt;.&lt;/span&gt;&lt;span style="color:blue;"&gt;name&lt;/span&gt; &lt;span style="color:blue;"&gt;as&lt;/span&gt; [partition
scheme]&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;from&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:green;"&gt;sys.data_spaces&lt;/span&gt; ds&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:gray;"&gt;join&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:green;"&gt;sys.destination_data_spaces&lt;/span&gt; dds&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;on&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:gray;"&gt;(&lt;/span&gt;ds&lt;span style="color:gray;"&gt;.&lt;/span&gt;data_space_id &lt;span style="color:gray;"&gt;=&lt;/span&gt; dds&lt;span style="color:gray;"&gt;.&lt;/span&gt;data_space_id&lt;span style="color:gray;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:gray;"&gt;join&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:green;"&gt;sys.partition_schemes&lt;/span&gt; ps&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;on&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:gray;"&gt;(&lt;/span&gt;ps&lt;span style="color:gray;"&gt;.&lt;/span&gt;data_space_id &lt;span style="color:gray;"&gt;=&lt;/span&gt; dds&lt;span style="color:gray;"&gt;.&lt;/span&gt;partition_scheme_id&lt;span style="color:gray;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:0.0001pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;color:blue;"&gt;order&lt;/span&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Courier New&amp;#39;;"&gt; &lt;span style="color:blue;"&gt;by&lt;/span&gt; ds&lt;span style="color:gray;"&gt;.&lt;/span&gt;&lt;span style="color:blue;"&gt;name&lt;/span&gt;&lt;span style="color:gray;"&gt;,&lt;/span&gt; ps&lt;span style="color:gray;"&gt;.&lt;/span&gt;&lt;span style="color:blue;"&gt;name&lt;/span&gt; &lt;span style="color:blue;"&gt;ASC&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin-bottom:12pt;line-height:normal;"&gt;&lt;span style="font-size:10pt;font-family:&amp;#39;Trebuchet MS&amp;#39;,&amp;#39;sans-serif&amp;#39;;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>