Designer supports ANSI 92 syntax for joins. ANSI 92 is not supported
by default. You must activate support by setting the SQL universe parameter
ANSI92 to YES. This parameter is listed on the Parameter page of the universe
parameters dialog box (File > Parameters > Parameter). Once activated,
you can choose to use ANSI 92 syntax for joins in the universe.
Ensure that you verify that the target RDBMS supports ANSI 92 before using
the syntax in joins.
Activating ANSI 92 support in the universe and defining a join using ANSI 92 syntax are described below.
Example: Comparing default join syntax and ANSI 92 syntax Join syntax for two joins is shown below. The first shows the default behavior where the join is defined in the WHERE clause, the second shows the same join in the FROM clause using the ANSI 92 standard.
SELECT
Resort.resort,
'FY'+Format(Sales.invoice_date,'YYYY'),
sum(Invoice_Line.days * Invoice_Line.nb_guests *
Service.price)
FROM
Resort,
Sales,
Invoice_Line,
Service,
Service_Line
WHERE
( Sales.inv_id=Invoice_Line.inv_id )
AND ( Invoice_Line.service_id=Service.service_id
)
AND ( Resort.resort_id=Service_Line.resort_id )
AND ( Service.sl_id=Service_Line.sl_id )
GROUP BY
Resort.resort,
'FY'+Format(Sales.invoice_date,'YYYY')
SELECT
Resort.resort,
'FY'+Format(Sales.invoice_date,'YYYY'),
sum(Invoice_Line.days * Invoice_Line.nb_guests *
Service.price)
FROM
Resort INNER JOIN Service_Line ON
(Resort.resort_id=Service_Line.resort_id)
INNER JOIN Service ON (Service.sl_id=Service_Line.sl_id)
INNER JOIN Invoice_Line ON
(Invoice_Line.service_id=Service.service_id)
INNER JOIN Sales ON (Sales.inv_id=Invoice_Line.inv_id)
GROUP BY
Resort.resort,
'FY'+Format(Sales.invoice_date,'YYYY')