Enjoy Every Sandwich

Thoughts on SQL, XML, .NET and sometimes beer.

<November 2008>
SuMoTuWeThFrSa
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456


Navigation

Tools

List O'Links

Kent's Other Stuff

Subscriptions

News

Please read these
Notices and Disclamiers

Post Categories

Article Categories



Stamping Out Outer-Joins (sort of)

Christian Kleinerman, one of the SQL Engine PMs, posted this to various Yukon newsgroups this weekend.

For years we’ve provided non-ANSI syntax to perform outer joins. (aka " *= outer joins ", "old style outer joins"). This syntax is ambiguous under some circumstances, which makes it hard to predict what the intent of the query is, let alone guarantee the desired results L

The ANSI standard provides non-ambiguous syntax to perform outer joins ( { LEFT | RIGHT | FULL } [ OUTER ] ) which has been available in the last few releases of SQL Server.

Given the above, we’ve often communicated our intention to deprecate this syntax in a future release of the product.

We’re considering disallowing old style (*=, =*) syntax in SQL Server 2005 under database compatibility 90. It would still be available for backwards compatibility under 80 and earlier compatibility levels (sp_dbcmptlevel). Applications would need to be changed to ANSI compliant syntax before moving to 90 compat.

Please let us know if you see any issues or concerns with this plan. All feedback welcome.

I for one have no problems with this and think its a step in the right direction. If you disagree, feel free to leave a comment here or send me a message -- I'll fowarded them up to Christian.

posted on Monday, August 30, 2004 6:24 AM by ktegels





Powered by Dot Net Junkies, by Telligent Systems