August 28, 2008
Untitled-1
ALL PASS Bloggers
  • Bob Beauchemin - Bob Beauchemin's Blog - RSS
  • Glenn Berry - Glenn Berry's SQL Server Performance - RSS
  • Mark Caldwell - Ajarn's SQL Corner - RSS
  • Louis Davidson  - The SQL Doctor is In (Real In) - RSS
  • Tara Duggan - Ramblings of a DBA - RSS
  • Randy Dyess - Transact-SQL Blog - RSS
  • Mike Epprecht - To SQL or not to SQL - RSS
  • Rob Farley - Blog - RSS
  • Euan Garden - Euan Garden's Blog - RSS
  • Bill Graziano - The Lazy DBA - RSS
  • Ken Henderson -  Ken Henderson's WebLog - RSS
  • Haidong Ji - The Ji Village News - RSS
  • Don Kiely - Don Kiely's Technical Blatherings - RSS
  • Kevin Kline - In a Nutshell - RSS
  • Thomas LaRock - Crazy DBA - RSS
  • Greg Linwood - Transaction Blog - RSS 
  • Aaron Lowe - AML's Space - RSS
  • Greg Low - The Bit Bucket - RSS
  • Adam Machanic - data manipulation for fun and profit - RSS 
  • Denise McInerney - select * from denisemc.views - RSS
  • Chris Miller - syscomments - RSS
  • Michael Rys - Musings on XML, XQuery and more... - RSS
  • Dejan Sarka - Solid Quality Learning Blogs - RSS
  • Kent Tegels - Enjoy Every Sandwich - RSS
  • Jamie Thomson - Jamie Thomson - Life, the universe and SSIS! - RSS
  • Rob Volk - TRUNCATE TABLE master..sysdatabases - RSS
  • Christian Wade - Christian Wade's Blog - RSS
  • Joe Webb - Musing and observations about SQL Server, other technogies, and sometimes just life in general - RSS
  • Pat Wright - A SQL Blog - RSS
  • Microsoft SQL Server Development Customer Advisory Team - RSS
  • Microsoft VS Data Team Weblog - RSS 

  • Untitled-1
     

    Welcome, this site is our a collecting ground for blogs about the PASS Community Summit experience and associated technologies.  We have links to any board of speakers, volunteers, attendees, and any members of PASS who want to be listed, and there will be an aggregation of several of the best posts every day.  If you would like to be a part of this site please email drsql@hotmail.com. 

    Untitled-1
    Blogs

    Current Articles | Categories | Search | Syndication

    Sunday, August 12, 2007
    Bob Beauchemin - MERGE, JOINS, and determinism
    By drsql@hotmail.com @ 10:05 AM :: 500 Views :: 0 Comments :: SQL Server 2005
     

     MERGE, JOINS, and determinism
    SQL Server 2008 will contain an ANSI SQL standard MERGE statement with extensions. Listening to the webcast last Friday, there's a fairly straightforward way to describe how this works.

    Let's go back to first principals. Relational databases support two ways to do UPDATE and DELETE; positioned updates and searched updates. In a positioned update, you open an updatable cursor over a set of rows, navigate to the row you want, and issue an "UPDATE...WHERE CURRENT OF" statement. The searched update (UPDATE foo SET x=y WHERE z=1) is a SELECT and UPDATE in one statement. You specify the rows you want and also update them. The way you specify/gather the rows to update is mostly up to you, SQL Server even supports using a JOIN to do this.

    update t
    set t.name = s.name, t.age  = s.age
    from [target] t
    join [source] s on t.id = s.id;
    go

    MERGE in SQL Server 2008 is a searched operation that can operate on up to three different rowsets depending on how you specify the MERGE statement. These are actually the three rowsets you can get from a FULL OUTER JOIN. The statement:

    select [target] t
    inner join [source] s on t.id = s.id;

    Read on

    Read More..
    Comments
    Currently, there are no comments. Be the first to post one!
    Click here to post a comment
     
    Copyright 2005 Professional Association for SQL Server (PASS)