From oracle-l-bounce@freelists.org Wed Jan 19 05:22:13 2005 Return-Path: Received: from air891.startdedicated.com (root@localhost) by orafaq.com (8.12.10/8.12.10) with ESMTP id j0JBMDsv026269 for ; Wed, 19 Jan 2005 05:22:13 -0600 X-ClientAddr: 206.53.239.180 Received: from turing.freelists.org (freelists-180.iquest.net [206.53.239.180]) by air891.startdedicated.com (8.12.10/8.12.10) with ESMTP id j0JBMCPk025430 for ; Wed, 19 Jan 2005 05:22:12 -0600 Received: from localhost (localhost [127.0.0.1]) by turing.freelists.org (Avenir Technologies Mail Multiplex) with ESMTP id E674C72C782; Wed, 19 Jan 2005 05:21:27 -0500 (EST) Received: from turing.freelists.org ([127.0.0.1]) by localhost (turing [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 02535-57; Wed, 19 Jan 2005 05:21:27 -0500 (EST) Received: from turing (localhost [127.0.0.1]) by turing.freelists.org (Avenir Technologies Mail Multiplex) with ESMTP id 78ACE72C7DD; Wed, 19 Jan 2005 05:21:15 -0500 (EST) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:reply-to:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:references; b=TCcR+gVcxTVo0SEVtigsVubKcbbXfagc++zzXVtGKss4zFieMo71xaT4utR0DPfX9K5Pwp28nt0vBSXkLsdrLbpW/ZGVUMKWOXN/UZZIcDFVdsQywA8+GYZX60bmKRHEcay+Qh8FMH763FNmRSq9gYA58G0XSTSVDWpMglBI6mY= Message-ID: <7765c8970501190219518a20de@mail.gmail.com> Date: Wed, 19 Jan 2005 10:19:09 +0000 From: Niall Litchfield To: mgogala@allegientsystems.com Subject: Re: ANSI Joins Cc: "Oracle-L (E-mail)" In-Reply-To: <41ED592F.7040107@allegientsystems.com> Mime-Version: 1.0 Content-type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit References: <41ED592F.7040107@allegientsystems.com> X-archive-position: 14922 X-ecartis-version: Ecartis v1.0.0 Sender: oracle-l-bounce@freelists.org Errors-To: oracle-l-bounce@freelists.org X-original-sender: niall.litchfield@gmail.com Precedence: normal Reply-To: niall.litchfield@gmail.com X-list: oracle-l X-Virus-Scanned: by amavisd-new at freelists.org X-Spam-Checker-Version: SpamAssassin 2.60 (1.212-2003-09-23-exp) on air891.startdedicated.com X-Spam-Level: X-Spam-Status: No, hits=0.0 required=5.0 tests=none autolearn=ham version=2.60 On Tue, 18 Jan 2005 13:45:03 -0500, Mladen Gogala wrote: > My developers are starting to use ANSI joins in vain hope that they will > make their apps portable > across databases. Of course they will be portable - assuming competent devs - in fact they will probably have similar performance characteristics across platforms as well. Consider JAVA it too is perfectly portable and it too performs similarly across platforms ;-) > I have a positive attitude toward ANSI joins: I hate > those verbose extensions > that make SQL statements lengthy and unreadable. What is the opinion of > other people about ANSI joins? I like the 'ANSI' syntax, it helps me as an occasional writer of SQL to think about what my join conditions are and what my filters are, more to the point it certainly helps me as a frequent *reader* of SQL understand what some developer is attempting to achieve. I take Stephanes point that the order of execution chosen by the DBMS may well not match the order of things in the SQL that is issued, but the old style of doing things (everything in the where clause) also may not match the order of execution chosen by the DBMS , but does make it remarkably easy to miss filter or join conditions out entirely. anything that makes good code easier to write is a good thing in my view and the 'ANSI' layout does that at least for me. my 2c -- Niall Litchfield Oracle DBA http://www.niall.litchfield.dial.pipex.com -- http://www.freelists.org/webpage/oracle-l