THE SQL Server Blog Spot on the Web

Welcome to SQLblog.com - The SQL Server blog spot on the web Sign in | |
in Search

Browse by Tags

All Tags » Internals » Undocumented   (RSS)
Showing page 2 of 2 (17 total posts)
  • Join Performance, Implicit Conversions, and Residuals

    You probably already know that it’s important to be aware of data types when writing queries, and that implicit conversions between types can lead to poor query performance.  Some people have gone so far as to write scripts to search the plan cache for CONVERT_IMPLICIT elements, and others routinely inspect plans for that type of thing when ...
    Posted to Paul White: Page Free Space (Weblog) by Paul White on July 18, 2011
  • A Tale of Two Index Hints

    If you look up Table Hints in Books Online, you’ll find the following statement: If a clustered index exists, INDEX(0) forces a clustered index scan and INDEX(1) forces a clustered index scan or seek. If no clustered index exists, INDEX(0) forces a table scan and INDEX(1) is interpreted as an error. The interesting thing there is ...
    Posted to Paul White: Page Free Space (Weblog) by Paul White on September 22, 2010
  • Sorting, Row Goals, and the TOP 100 Problem

    When you write a query to return the first few rows from a potential result set, you’ll often use the TOP clause.  To give a precise meaning to the TOP operation, it will normally be accompanied by an ORDER BY clause.  Together, the TOP…ORDER BY construction can be used to precisely identify which top ‘n’ rows should be returned. The ...
    Posted to Paul White: Page Free Space (Weblog) by Paul White on August 26, 2010
  • Inside the Optimizer: Row Goals In Depth

    Background One of the core assumptions made by the SQL Server query optimiser’s model is that clients will consume all of the rows produced by a query.  This results in plans that favour the overall execution cost, though it may take longer to begin producing rows.  Let’s look at an example: The optimiser chooses to perform the ...
    Posted to Paul White: Page Free Space (Weblog) by Paul White on August 18, 2010
  • The Impact of Non-Updating Updates

    From time to time, I encounter a system design that always issues an UPDATE against the database after a user has finished working with a record – without checking to see if any of the data was in fact altered.  The prevailing wisdom seems to be that “the database will sort it out”.  This raises an interesting question: how smart is SQL ...
    Posted to Paul White: Page Free Space (Weblog) by Paul White on August 10, 2010
  • Iterators, Query Plans, and Why They Run Backwards

    Iterators SQL Server uses an extensible architecture for query optimisation and execution, using ‘iterators’ as basic building-blocks.  Iterators are probably most familiar in their graphical showplan representation, where each icon represents a single iterator.  They also show up in XML query plan output as RelOp nodes. Each ...
    Posted to Paul White: Page Free Space (Weblog) by Paul White on August 4, 2010
  • Inside the Optimizer: Constructing a Plan – Part 4

    Summary: More undocumented ways to explore how the query optimiser works. This post is part of a series: Part1 Part 2 Part3 Part4 Documented Rule-Affecting Options It might surprise you to learn that most T-SQL users have written queries that disable one or more of the optimiser rules already. Join hints { LOOP | HASH | MERGE | ...
    Posted to Paul White: Page Free Space (Weblog) by Paul White on July 31, 2010
Powered by Community Server (Commercial Edition), by Telligent Systems
  Privacy Statement