>
> On Wed, Sep 19, 2012 at 11:15 PM, David Johnston <polobo@yahoo.com>
> wrote:
> > I could maybe see something like the following having some value:
> >
> > SELECT inverse
> > FROM data
> > WHERE x<>0 AND inverse > .5
> > MACRO inverse (1/x)
> >
>
> WITH macros AS (SELECT *,1/x AS inverse FROM data) SELECT inverse FROM
> macros WHERE x<>0 AND inverse > .5
>
In your example the "macro" has to either be attached directly to the FROM
or be used as part of a sub-select; it is not a text substitution macro at
all. The pre-processor upon encountering a macro, would simply replace all
identifiers (at the same level in the query) with "(expression)".
David J.