SQL Server Performance Tuning

My manager has asked me to put together a plan for a backup server for our production server running SQL Server. Should I use log shipping or clustering?

Most of the production SQLServersI have run across don’t have any easy or quick way to failover to a working server should they fail. Generally, most people hope their production SQL Server never fails. And in the back of their minds, they think they know what to do to recover should the worst happen, but […]

How do I find the most frequently occurring value for all data in a table? How do I find that value per group?

As always, there is more than one way to get a correct result. But which way gives you the best performance? Let’s first build a simplified test scenario to illustrate what we’re after. CREATE TABLE #t (ArticleGroup CHAR(2), Price DECIMAL(8,2)) INSERT INTO #t VALUES(‘SP’, 1.2) INSERT INTO #t VALUES(‘SP’, 1.2) INSERT INTO #t VALUES(‘SP’, 2.1) […]

How can I determine the maximum value for each data? And which option provides the best performance?

One of the most common requirements is to generate a list of, say, customers along with their last order date. Or, generally speaking, a list of distinct values in one table along with a corresponding maximum value from another table. To solve such problems you basically have three different alternatives. Let’s have a look at […]

Is there any performance difference between using SET or SELECT to assign values in Transact-SQL?

This is virtually no difference in performance between using SET or SELECT to assign values. In most cases you will want to use the ANSI standard, which says you should use SELECT. See the SQL Server Books Online for the exact syntax for both options.

I would like some input on the best, most efficient way to store images for use on a website.

QuestionI would like some input on the best, most efficient way to store images for use on a website. The two main options that I see are storing images as a BLOB in SQL Server, or storing the URL of the file in SQL Server, and actually storing the image file on a file share. […]

When creating temp tables within a stored procedure, is it good practice to drop them as soon as they are no longer required?

Maintaining temp tables uses up SQL Server resources, so the sooner you delete them after you are done using them, the better. For most SQL Servers, there is probably not much of a performance difference if you decide to delete them later than sooner, but on a very busy SQL Server that manages lots of […]

Since functions are not pre-compiled, is there any performance gain from using user-defined functions as opposed to stored procedures?

QuestionI work in a SQL Server environment where we have literally hundreds of stored procedures in one database that are utilized for an OLAP application, and likewise for an OLTP application. I have seen in many instances where a stored procedure is used solely because one can pass parameters to it and use these parameters […]

Does SQL Server support table partitioning?

Question I have a table with over 40 million rows.  I would like to partition the table base on the creation date.  Does SQL Server support table partitioning? AnswerEven with the fastest hardware and optimally-written queries, there comes a point in the size of a table where there are just too many rows to handle quickly. […]

I’ve been under the impression that joins are costly and should be kept to a minimum. Is this true?

QuestionI have a “main” table named Property. This table has approximately 60 columns and over 1 million records (this record count will increase significantly over time). Of these 60 columns, approximately 25 are IDs which reference values in multiple different lookup tables. In any given view, query or store procedure, I end up joining 12-25 […]

Which is faster when using SQL Server 2000 or 2005, temp tables or the table datatype?

Generally speaking, if the data you are dealing with is not large, then the table datatype will often be faster than using a temp table. But if the amount of data is large, then a temp table most likely will be faster. Which method is faster is dependent on the amount of RAM in your […]